在jQuery Mobile中使用pageInit()初始化代码

Initializing code using pageInit() in jQuery Mobile

本文关键字:初始化 代码 pageInit jQuery Mobile      更新时间:2023-09-26

我正试图使用pageInit()函数初始化jQuery移动页面的javascript。我在下面列出了一些尝试,但我似乎无法成功。有人能告诉我我做错了什么吗。还有没有一种方法可以使用$(this)而不是使用页面的显式名称来实现这一点?

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>

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

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

查看jQuery移动文档以了解更多信息。