Я не уверен, почему $ 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>
Поскольку $.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);
});
});
});
mailto
? В строке, начинающейся сmailto:...
нет адресаmailto:...