2012-08-03 31 views
0

我正尝试使用pageInit()函数为jQuery移动页面初始化javascript。我在下面概述了一些我似乎无法工作的尝试。任何人都可以告诉我我做错了什么。还有没有办法做到这一点使用$(this)而不是使用页面显式名称?在jQuery Mobile中使用pageInit()初始化代码

pageInit.html:

<head> 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 
    <link rel="stylesheet" href="http://code.jquery.com/mobile/1.1.0-rc.1/jquery.mobile-1.1.0-rc.1.min.css" 
    /> 
    <script src="http://code.jquery.com/jquery-1.7.1.min.js"></script> 
    <script src="http://jqueryui.com/ui/jquery-1.7.1.js"></script> 
    <script src="http://code.jquery.com/mobile/1.1.0-rc.1/jquery.mobile-1.1.0-rc.1.min.js"></script> 
    <script src="http://jqueryui.com/ui/jquery.ui.core.js"></script> 
    <script src="http://jqueryui.com/ui/jquery.ui.widget.js"></script> 
    <script src="http://jqueryui.com/ui/jquery.ui.position.js"></script> 
    <script src="http://jqueryui.com/ui/jquery.ui.autocomplete.js"></script> 
    <script src="http://code.jquery.com/ui/1.8.20/jquery-ui.min.js" 
    type="text/javascript"></script> 
    <script src="functions.js"></script> 
</head> 

<body> 
    <script> 
     alert("script"); 
     $(this).live('pageinit', function (event) { 
      //$('pageInit.html').live('pageinit',function(event){ 
      //$('#pageInit').live('pageinit',function(event){ 
      //$('#pageInit.html').live('pageinit',function(event){ 
      alert("Page Initialized"); 
     }); 
    </script> 
</body> 

回答

1

pageinit事件在文档被解雇。使用live也没有意义。相反,我会使用bind。例如:

$(document).bind('pageinit', function (event) { 
     alert("Page Initialized"); 
    }); 

查看jQuery mobile documentation了解更多信息。