$ .getScript не работает в функции щелчка

0

Я не уверен, почему $ getScript не работает в функции щелчка в браузере Firefox, но работает в других браузерах. Тот же код вне функции щелчка работает на firefox. Может кто-нибудь объяснить, в чем проблема?

 <script type="text/javascript">
    var page = "";
    page = window.location.href;
        jQuery(document).ready(function($){
             $( "#socialemail" ).click(function() {
                $.getScript('/social-media.php?email&' + page);
                window.location.href="mailto:?subject=text here Systems&body="+escape(window.location.href);
             });  
       });    
    </script>
Теги:

1 ответ

3

Поскольку $.getScript() является асинхронным, и я ожидаю, что вы хотите дождаться его результатов, вы должны выполнить следующее изменение свойства window.location.href в функции обратного вызова, переданной в $.getScript(). Что-то вроде

var page = "";
page = window.location.href;
    jQuery(document).ready(function($){
         $( "#socialemail" ).click(function(e) {
            // prevent the default action of clicking on whatever element
            // with id 'socialemail' is
            e.preventDefault();

            $.getScript('/social-media.php?email&' + page, function () { 
                // run this after the script has been fetched
                window.location.href="mailto:?subject=text here Systems&body="+encodeURIComponent(window.location.href);
            });
         });  
   });   
  • 0
    Я изменил ваше предложение, и php-файл теперь обновлен (спасибо!), Однако окно mailto не появляется ни в одном из браузеров.
  • 0
    Куда отправляется mailto ? В строке, начинающейся с mailto:... нет адреса mailto:...
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню