2012-05-01 2 views
0

Я заметил интересную проблему с тем, как jQuery обрабатывает гиперссылки. Согласно документу, нажатие на ссылку вызовет вызов AJAX, а содержимое запрошенной страницы будет заполнено на страницах текущего DOM.Работа со страницами в jQuery Mobile

Теперь рассмотрим это, index.html имеет гиперссылку, которая указывает на location.html. Внутри location.html Я использую window.onload = getMyLocation ;, чтобы вызвать вызов функции JavaScript. Поскольку jQuery mobile просто подбирает код в роли роли данных, мой код JavaScipt никогда не запускается, и в результате мне нужно явно обновить страницу. Есть ли обходной путь?

Благодаря KJ

ответ

0

Вы можете не вызвать функцию JavaScript из события обожженного в вашей гиперссылке, т.е.

<a href="#location.html" onClick="[...]">Location</a> 

или

<a href="#location.html" id="locbutton">Location</a> 

<script type="text/javascript"> 
$("#locbutton").live("click", function(){ 
    [...] 
}); 
</script> 
0

Вы можете привязать к событию pagebeforeshow, чтобы получить тот же эффект, что и при загрузке.

$(document).on("pagebeforeshow", function(e) { 
    // do stuff 
}); 
Смежные вопросы