1

我觉得我错过了一些明显的东西,但我对这一切都很陌生,所以请原谅我的求助!

我应该如何调用自己存储在单独的 .js 文件中的 jQuery 函数?我已经开发了我的应用程序的工作原型,但现在正在尝试整理代码,并将各种 jQuery 函数移动到一个单独的文件中,我可以在每个页面上访问它们。但是由于某种原因,一旦我将代码转换为命名函数,无论是在我的 html 文档的头部还是在单独的 .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 文件中,只保留这些行

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

并删除第一行和最后一行。还更改以下内容

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

   InitRightBar();

只要。

于 2012-06-17T14:48:26.520 回答