0

我已经包含了 Jquery 和 Jquery 手机的最新版本。

我基本上是在尝试使用移动按钮来调用 JavaScript 函数但遇到问题。

这在 chrome 中可以正常工作,但在剧本上的 webworks 中不行(这是我得到错误的地方)

<script type="text/javascript" src="js/personSearch.js" ></script>

包括我的自定义 JavaScript 代码

在该文件中,我有以下代码

    function testme()
{
    alert("tet");
}

我尝试了以下所有方法:

<input type="button" onclick="testme();" value="Button" />
<a id="psClear" href="javascript:testme();" data-role="button" data-inline="true">Clear</a>

对于他们来说,我得到了错误:mainMenu.html:1ReferenceError: Can't find variable: testme

我认为这与 J query Mobile 呈现按钮的方式有关,但不确定......

更新

如果我在页面加载到 javascript 之前将 rel="external" 添加到页面并且工作正常,但再次重新加载所有脚本,并且没有 rel="external" 将无法工作

    <link  rel="stylesheet" type="text/css" href="css/jqueryMobileCSS.css">
    <link  rel="stylesheet" type="text/css" href="css/customStyle.css">
    <script type="text/javascript" src="js/jquery-1.7.1.min.js"></script>
    <script type="text/javascript" src="js/jqueryMobile.js"></script>
    <script src="js/eBar.js"></script>
    <script src="js/moment.min.js"></script>
    <script src="js/ain.js"></script>
    <script src="js/tleBar.js"></script>
    <script type="text/javascript" src="js/ps.js" ></script>

所以没有 rel="external" js/ps.js 似乎没有加载...位于两个页面上的脚本完全相同,但新页面也加载了 js/ps,js .. 谢谢

4

1 回答 1

1

不要使用内联Javascript(在此处阅读原因)调用函数。看起来您遇到的错误与您的文件尚未加载的事实有关,personSearch.js因此该功能可能不存在。使用 Chrome/Firebug JS 控制台检查函数是否已明确定义,然后创建另一个脚本,其中包含类似于以下内容的内容:

$(document).bind('pageinit',function () {
    $("#psClear").on('click',function(){
      testme();
     });
});

这将确保在将单击事件绑定到您的按钮之前,DOM 已加载并准备就绪。确保在您的脚本之后加载此personSearch.js脚本。

于 2012-07-17T09:57:57.360 回答