只有JQuery可执行文件的一部分.直接粘贴在HTML中一切正常(window.location)

seu*_*rg1 1 html javascript jquery external

我有一个JS文件,它可以完美地工作,并执行其中的所有代码.

但我现在添加了以下JQuery:

$("#need2Know").click(function(){
        window.location ="URLString";           
        return false;
});


$("#nice2Know").click(function(){
        window.location ="URLString";           
        return false;
});
Run Code Online (Sandbox Code Playgroud)

当我在HTML文件中调用此部分代码时,onclick处理按预期执行.但是,只要我将其粘贴到JS文件中(在所有其他代码之上,其余代码仍然有效),onclick处理就不再起作用了.

我使用以下JQuery库:

<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
Run Code Online (Sandbox Code Playgroud)

我的JQ文件在此库之后调用.

对我来说很奇怪的是,代码在HTML中工作但在JS文件中没有,尽管代码的其余部分仍然像以前一样处理...

关于如何解决这个问题的任何建议,所以可以在JS中执行点击处理?

Sat*_*pal 5

目前您正在使用的是一种"直接"绑定,它只会在您的代码进行事件绑定调用时附加到页面上存在的元素.由于尚未加载DOM,因此不会附加任何事件处理程序.

您可以通过以下方法之一解决问题:

  1. 将代码包装在文档就绪处理程序中.

指定DOM完全加载时要执行的函数.

$(document).ready(function() {

});
Run Code Online (Sandbox Code Playgroud)
  1. 将对文件的引用移动到<body>元素的底部.