通过单击href url加载新页面时,不会调用JavaScript中的函数

时间:2012-05-14 08:37:10

标签: javascript jquery html

我正在使用jQuery Mobile创建一个Web应用程序。我的href链接和我的javascript代码有问题。 以下是我的index.htmlcurate.html中的javascript代码:

$(document).ready(function(){
   alert("Hello!");
});

在html代码中,它只是导航栏的代码:

<ul>
    <li><a href="index.html">Home</a></li>
    <li><a href="curate.html">curate</a></li>
</ul>

所以问题是:例如,当我在主页上,单击策展页面的策展链接时,警报不会弹出。看来这个函数没有在javascript中调用。但是,如果我重新加载策展页面,它会起作用。从策展页面到主页也存在同样的问题。

如果我将html代码更改为

,问题将得到解决
<ul>
    <li><a href="index.html" >Home</a></li>
    <li><a onclick="gotoCurate()">curate</a></li>
</ul>

并在index.html中添加js代码:

function gotoCurate() { 
    window.location="curate.html"
}

类似于策展页面。

我想也许在使用href时,页面并没有真正加载。我在头部添加<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">但它不起作用。出于某些原因,我想使用href来指导页面之间的连接。那么有人知道如何在保持href链接的同时解决问题吗?

谢谢!

4 个答案:

答案 0 :(得分:4)

您需要更改:

$(document).ready(function(){alert("Hello!");

为:

$(document).ready(function(){alert("Hello!")});

我还将结构分解为不同的行,当你将来想要改进系统时,它会更清楚。

答案 1 :(得分:1)

看看用javascript开发时出了什么问题,你应该使用导航器的开发者控制台,它有很多帮助

答案 2 :(得分:0)

尝试添加此<script type="text/javascript" src="jquery-1.4.2.js"></script>

This示例应该有所帮助。

答案 3 :(得分:0)

问题是由jQuery Mobile引起的。以下是详细信息:http://jquerymobile.com/demos/1.0a4.1/docs/pages/docs-pages.html