, как подсказывают ответы в теме, на которую ссылается Матеуш Возняк:
<div data-role="page" id="news">
<script type="text/javascript">
$("#news").live('pageinit', function() {
alert("pageinit runs");
getData();
});
</script>
// More html code...
</div>
И getData () определяется в разделе :
<script type="text/javascript">
//////////////////////////////////////////////////////////////////////////
//
// Get data
//
//////////////////////////////////////////////////////////////////////////
function getData()
{
var photos = {};
alert("getData() runs");
$.mobile.loadingMessage = "Laddar...";
$.mobile.showPageLoadingMsg();
$.ajax({
type: "get",
url: "http://api.flickr.com/services/feeds/photos_public.gne?jsoncallback=?",
data: ({tags: 'cat', format: 'json', tagmode: 'any'}),
cache: false,
dataType: "json",
success: onSuccess,
error: onError
});
}
</script>
Отображается первое предупреждение, но не в getData (). Я получаю сообщение об ошибке:
getData () не определено.
Но это так, вы видите какие-либо ошибки?
Решение
Ну, это странно. Поскольку он не смог найти мою функцию после того, как я позвонил в pageinit, я немного погуглил. Через некоторое время я понял, что вы должны поместить весь свой JS-код в тег . Когда я поместил свою функцию getData (), это сработало!
Может кто-нибудь объяснить, почему?