2

我是 jquery 的新手。帮我解决这个问题

我在一个单独的 js 文件中有这个脚本

$(document).ready(function () {
$("#btn_click").click(function () {
    $("#SecondLine").hide();
});
});

我想通过单击 id="btn_click" 的元素来执行此脚本

<form id="form1">
<div>
    <h2>This is a heading</h2>
    <p>This is a paragraph.</p>
    <p id="SecondLine">This is another paragraph.</p>       
    <p1 id="btn_click">Click me</p1>
</div>
</form>

当我在同一个 aspx 页面上的 head 标记之间包含整个脚本时,该代码可以完美运行。但是当我将此代码放在单独的 js 文件中时,它不起作用。注意:我已将脚本包含在 aspx 页面中。

<script src="../Scripts/jquery-1.4.1-vsdoc.js" type="text/javascript"></script>
<script src="../Scripts/jquery-1.4.1.js" type="text/javascript"></script>
<script src="../Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>
<script src="../JQuery/JQuery_HidingText.js" type="text/javascript"></script>

仍然无法正常工作:(。我错过了什么吗?

4

3 回答 3

0

使用 ~ 符号代替 ..

~/Scripts/jquery-1.4.1.js" 而不是 ../Scripts/jquery-1.4.1.js" ~/Scripts/jquery-1.4.1.min.js" 而不是 ../Scripts/jquery- 1.4.1.min.js"

一切顺利

于 2013-06-28T11:32:23.080 回答
0

你加载了 jQuery 脚本两次。

<script src="../Scripts/jquery-1.4.1.js" type="text/javascript"></script>
<script src="../Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>

删除其中之一。

您也应该删除此文件:

<script src="../Scripts/jquery-1.4.1-vsdoc.js" type="text/javascript"></script>

之后检查脚本的路径。您的脚本工作正常

于 2013-06-28T11:19:12.247 回答
0

尝试使用

pageLoad()

代替

$(document).ready(function ()
{
  //.. etc
}); 

pageLoad 使用不同的方法(超时)来检查 DOM 是否准备好。我有一个脚本失败$(document).ready但可以使用pageLoad- pageLoad 后来击中了一小部分,这产生了影响。对我来说,这只是 IE 中的一个问题

无论如何可能行不通,但很容易尝试,我认为值得一试

详情见这里页面加载

当然祝你好运

另一个想法

将外部脚本文件引用的位置更改为就在结束正文标记之前,而不是在头部。再次给标记在脚本执行之前加载的最佳机会(我知道准备好的文档应该这样做但是......)。再次值得一试

仅出于测试目的,我会将外部脚本文件更改为尽可能简单,以排除任何其他怪异,即使用

$(document).ready(function () {
    alert('Hello - i am here');
});
于 2013-06-28T12:12:20.310 回答