1

明らかな何かが欠けているように感じますが、私はこれらすべてに慣れていないので、助けを求める叫びを許してください!

別の .js ファイルに保存されている独自の jQuery 関数をどのように正確に呼び出す必要がありますか? アプリの実用的なプロトタイプを開発しましたが、コードを整理し、さまざまな jQuery 関数を別のファイルに移動して、各ページでアクセスできるようにしています。しかし、何らかの理由で、html ドキュメントの head または別の .js ファイルでコードを名前付き関数に変換すると、コードにアクセスできなくなりました。重要なことに、関数を実際に呼び出すための正しい構文への簡単な参照が見つかりません!

とにかく、関連するコードは次のとおりです。

<head>

<link rel="stylesheet" href="jquery.mobilecus-1.1.0.min.css"/>
<script type="text/javascript" charset="utf-8" src="cordova-1.8.1.js"></script>
<script src="js/jquery-1.7.2.js"></script>
<script src="js/jquery.mobile-1.1.0.min.js"></script>
<script src="js/myjquery.js"></script>

</head>
<body onload="onBodyLoad()">

<div data-role="page" id="page1" class="page">

    <script type="text/javascript">
        $(document).ready(function () {
        alert("alert1!");
        $(InitRightBar());   /// This is the problem!
        });
        </script>
...
</div>
...
</body>

そして、別の「myjquery.js」ファイル全体:

$(function() { //ready

function InitRightBar (){
alert("alert2!");
$("#rightbar").live("swipeleft", function(){
                  $.mobile.changePage($("#page2"))
            });
}

}); //end ready

注: アラート 1 は常に発生しますが、アラート 2 は、関数を html ヘッドに配置しても発生しません。"$(InitRightBar()); の代わりに複数の異なる構文を試しました。

4

1 に答える 1

2

JS File から、これらの行のみを保持します

   function InitRightBar (){
      alert("alert2!");
       $("#rightbar").live("swipeleft", function(){
              $.mobile.changePage($("#page2"))
        });
    } 

最初と最後の行を削除します。次の行も変更します

   $(InitRightBar());   /// This is the problem!

   InitRightBar();

それだけ。

于 2012-06-17T14:48:26.520 に答える