0

したがって、page1.html と page2.html の 2 ページの例があります。page1 から page2 への href リンクがあります。しかし、page2.html の JavaScript は無視され、呼び出されないようです。(ドキュメントの準備を試みましたが、本文のオンロードは機能しませんでした)

jquery mobile は最初のページの JavaScript のみを受け入れますか?

page2.html が呼び出された後、どのように JavaScript を実行しますか?

jquery mobile を初めてご利用いただきありがとうございます。

ページ 1 に似た page2.html のサンプル コード:

    <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>
4

4 に答える 4

5

Everything you need to know about this problem can be found here: Why I have to put all the script to index.html in jquery mobile

To understand this situation you need to understand how jQuery Mobile works. It uses ajax to load other pages.

First page is loaded normally. Its HEAD and BODY is loaded into the DOM, and they are there to await other content. When second page is loaded, only its BODY content is loaded into the DOM.

That's why your button is show successfully but click event is not working. Same click event whose parent HEAD was disregarded during the page transition.

Here's an official documentation: http://jquerymobile.com/demos/1.2.0/docs/pages/page-links.html

Unfortunately you are not going to find this described in their documentation. Ether they think this is a common knowledge or they forgot to describe this like my other topics. (jQuery Mobile documentation is big but lacking many things).

于 2013-07-24T07:00:45.083 に答える
2

投稿したコードに基づいて:

以下を必ず含めてください。

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

前:

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

mobileinit は jquery-mobile フレームワークの一部であると確信しています。

第二に、jquery-mobile のドキュメントに従って、直接ページ構造を使用することを強くお勧めします。

1 つのドキュメントで複数の div (ページ) を使用することのもう 1 つの利点は、ユーザーが各ページ要求ですべての javascript/css をリロードする必要がないことです。これにより、使用される帯域幅の量とページのパフォーマンスが最小限に抑えられます。

于 2013-07-24T05:05:08.843 に答える
1

必要なjquery libが含まれていることを確認してください。また、別のjqueryモバイルイベントを試すこともできます..

ページ遷移は、現在アクティブなページ (fromPage) から新しいページ (toPage) への変化をアニメーション化するために使用されます。これらの遷移の前後にイベントがトリガーされるため、ページが表示または非表示になるたびにオブザーバーに通知できます。トリガーされるイベントは次のとおりです。

ショー前のページ

于 2013-07-24T05:49:24.007 に答える
0

次のように script タグを使用して、各 html ファイルに jquery ファイルを含める必要があります。

<script type="text/javascript" language="javascript" src="jquery-1.6.3.min.js"></script>
于 2013-07-24T04:16:56.310 に答える