2013-09-06 2 views
1

У меня есть 3 страницы php, 1 индексная страница и 2 другие подстраницы, у которых есть ссылки (продажи и продукты) на индексной странице. когда я нажимаю на продажи, это suppode загружает данные продаж по pageint или document ready, как я использую ниже для отладки.jquery mobile wont fire pageinit or ready

$('[data-role="page"]').live('pageshow', function() { <-- error line 
    console.log("pageshow"); 
}); 

$(document).on('pageinit', function(){ 
console.log("pageinit"); 
}); 
$(document).ready(function(){ 

    console.log("docready"); 
}) 

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

Object [object Object] has no method 'live' 

я я использую

jquery.1.9.1.min.js 
jquery.mobile.1.3.2.min.js 

HTML-страницы индексной

<div data-role="page" data-ajax="false" id="home"> 
    <?php include_once("header.php");?> 
    <div data-role="content" data-theme="">  
     <ul data-role="listview" data-divider-theme="b" data-inset="true"> 
      <li data-role="list-divider" role="heading">Menu</li> 
      <li data-transition="flip"> 
       <a href="outgoing.php" data-transition="slide" data-ajax="true">sales </a> 
      </li> 
      <li data-transition="flip"> 
       <a href="settings.php" data-transition="slide" data-ajax="true">products</a> 
      </li> 
      <li> 
       <a href="../logout.php">Logout</a> 
      </li> 
    </ul><div data-role="navbar" data-iconpos=""> 
     </div> 
    </div> 
    <div data-role="footer" data-theme="b"> 
    <?php include_once("../footer.php");?></h4> 
    </div> 
</div> 

что я делаю неправильно?

Редактировать

Я обновил свой код, чтобы $('[data-role="page"]').on('pageshow', function() {, но не из функций огня, кроме я обновить страницу вручную после того, как он был полный нагруженный

ответ

2

я решил проблему путем установки данных Ajax = ложь в ссылке, загруженной на то будет страница не стрельбы документ readey и остальное

<a href="page.php" data-ajax="false">link</a> 

Thanks

+0

Все это делает загрузку страницы без AJAX. Его на самом деле ничего не решило, его просто делали по-другому. –

+0

Pls вы можете предложить другой способ, которым вы можете решить? – Smith

1

live устарела, вы должны использовать on функция в новой версии jquery. live устарел в 1.7 и удален в 1.9. Поскольку вы используете 1.9.1, вы должны использовать on.

$('[data-role="page"]').on('pageshow', function() 

version deprecated: 1.7, removed: 1.9

+0

благодаря , но проблемы все еще остаются. кроме обновления страницы, эти функции не срабатывают. – Smith

+0

@Smith поместите ее внутри '$ (document) .ready', а затем попробуйте. –

+0

Я только что сделал, и это то же самое, я предполагаю, что это связано с страницами кэширования jqm. – Smith

Смежные вопросы