Jquery移动javascript在另一个html上不起作用

Jquery mobile javascript on another html not working

本文关键字:html 不起作用 另一个 移动 javascript Jquery      更新时间:2023-09-26

所以我有两个页面,例如page1.html和page2.html。从page1到page2有一个href链接。但是page2.html中的javascript似乎被忽略了,并且没有被调用。(已尝试文档准备就绪,正文加载不起作用)

那么jquerymobile只接受第一页上的javascript吗?

在调用page2.html之后,如何运行javascript?

jquery手机新手,谢谢。

page2.html上的示例代码类似于第1页:

    <meta name="viewport" content="width=device-width, user-scalable=no" />
    <link rel="stylesheet" type="text/css" href="css/index.css" />
    <link rel="stylesheet" href="css/jquery.mobile-1.3.1.min.css">
    <script type="text/javascript" src="cordova-2.5.0.js"></script>
    <script type="text/javascript" charset="utf-8" src="js/imageresize.js"></script>
    <link rel="stylesheet" href="css/jquery.Jcrop.min.css" type="text/css" />
    <script src="js/jquery.-1.10.1.min.js"></script>
    <script>
    $(document).bind("mobileinit", function(){
        $.extend(  $.mobile , {
            defaultPageTransition:'none'    
        });
    });
    </script>
    <script src="js/jquery.mobile-1.3.1.min.js"></script>   
    <body>
    HELLO WORLD
    </body>
    <script>
   $(function() {
    alert('testing js');        
  });
    </script>

关于这个问题,你需要知道的一切都可以在这里找到:为什么我必须把所有的脚本放在jquery mobile 中的index.html

要了解这种情况,您需要了解jQueryMobile是如何工作的。它使用ajax加载其他页面。

正常加载第一页。它的HEADBODY被加载到DOM中,它们在那里等待其他内容。加载第二页时,只有BODY内容加载到DOM中。

这就是为什么您的按钮显示成功,但点击事件不起作用。在页面转换期间忽略其父级HEAD的同一单击事件。

这是一份官方文件:http://jquerymobile.com/demos/1.2.0/docs/pages/page-links.html

不幸的是,你不会在他们的文档中找到这样的描述。以太他们认为这是常识,或者他们忘记像我的其他主题一样描述这一点。(jQueryMobile文档很大,但缺少很多东西)。

基于您发布的代码:

确保您包括:

 <script src="js/jquery.mobile-1.3.1.min.js"></script>  

之前:

    <script>
    $(document).bind("mobileinit", function(){
        $.extend(  $.mobile , {
            defaultPageTransition:'none'    
        });
    });
    </script>

我确信mobileinit是jquery移动框架的一部分。

其次,我强烈建议根据jquery移动文档使用定向页面结构。

在一个文档中使用多个div(页面)的一个额外优势是,用户不必在每个页面请求上重新加载所有javascript/css,这将最大限度地减少所用带宽和页面性能。

确保包含所需的jquery lib,并且您还可以尝试其他jquery移动事件。。

页面转换用于动画化从当前活动页面(fromPage)到新页面(toPage)的更改。在这些转换之前和之后都会触发事件,以便在显示或隐藏页面时可以通知观察者。触发的事件如下:

显示前的页面

您应该使用脚本标记将jquery文件包含在每个html文件中,如下所示

<script type="text/javascript" language="javascript" src="jquery-1.6.3.min.js"></script>