2015-02-24 4 views
0

У меня есть простое приложение сделано с JQuery Mobile, в какой-то момент у меня есть это:Link + на (pagecontainershow) терпеть неудачу

<a href="test_es.html" data-role="button">Start!</a> 

который загружает новый HTML с большим количеством Jquery мобильных страниц:

<div data-role="page"> 

Я определил, в моем внешнем файле JS, глобальная переменная:

var startTimeQuestion; 

И этот метод, который находится внутри моего HTML (test_es.html):

<script> 
    $(document).on('pagecontainershow', function() { 
     console.log("Storing time.."); 
     startTimeQuestion = new Date().getTime(); 
    }); 
</script> 

Проблема заключается в том, что при нажатии на кнопку он правильно загружает файл, но кажется, что это не загрузит JS или функцию, или я не знаю, потому что когда Я буду использовать мою переменную startTimeQuestion, которая говорит НЕ УКАЗАНА, и она не отображает в консоли «Время хранения ...». Если перезагрузить страницу, она работает нормально.

Я попытался выполнить функцию $. (Document) .ready() в первый раз, когда я загружаю страницу, но все еще не работаю. Похоже, что test_es.html не загружает мои custom.css и мой файл test.js, пока я полностью не загружу страницу. Поэтому я предположил, что ошибка в том, как я называю test_es.html, это не так:

<a href="test_es.html" data-role="button">Start!</a> 

правильный способ сделать это?

Спасибо.

+0

jQM загружает внешние страницы через AJAX по умолчанию (HTTP://demos.jquerymobile.com/1.4.5/navigation/) и загружает только первую роль data-role = "page" DIV. Таким образом, вам нужно либо переместить скрипт в data-role = "page" DIV, либо загрузить страницу без AJAX. – ezanker

ответ

0

Благодаря комментарии, прежде чем я нашел решение, это было так просто, как поставить атрибут «данные-Аякса» ложному таким образом:

<a href="test_es.html" data-role="button" data-ajax="false">Start!</a> 
Смежные вопросы