jQuery mobile mobileinit没有被触发

时间:2013-02-28 14:01:46

标签: jquery cordova jquery-mobile mobile-application

我想在加载jQuery mobile之前通过AJAX动态加载页面内容,所以我尝试使用mobileinit事件。但它没有用。这是我的代码请帮助

 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">

    <link rel="stylesheet" href="http://jquerymobile.com/demos/1.3.0-beta.1/css/themes/default/jquery.mobile-1.3.0-beta.1.css" />
    <script src="js/jquery-1.8.2.min.js"></script>
    <script>
        $(document).bind("mobileinit", function()  {        
            $("#notification").text("Please enter your domain name.");
        });
    </script>
    <script src="js/jquery.mobile-1.3.0.min.js"></script>
    <title>Insert title here</title>
    </head>
    <body>
       <h3 id="notification" style="font-family: fantasy; color: red; text-align: center;"></h3>
    </body>
    </html>

2 个答案:

答案 0 :(得分:3)

这不起作用。

当触发mobileinit事件时,DOM内容仍为空。 Pageinit是第一个你甚至可以考虑这样做的事件。但更好的是pagebeforeshow事件。

$(document).on('pagebeforeshow', '#index', function(){    

});

以下是添加动态生成内容的旧示例:http://jsfiddle.net/Gajotres/GnB3t/

这是另一个例子,只需点击下一步按钮即可看到动态生成的页面:http://jsfiddle.net/Gajotres/8jcGb/

答案 1 :(得分:0)

试试这个          

<script src="js/jquery.mobile-1.3.0.min.js"></script>
<script>
function init(){
    $(document).bind("mobileinit", function()  {        
        $("#notification").text("Please enter your domain name.");
    });
}
</script>
<body onLoad="init()">
</body>