只是 JQuery 可执行文件的一部分.当直接粘贴到HTML中时,一切正常(window.location)
Only part of JQuery executable. When pasted in HTML directly everything works (window.location)
我有一个JS文件,它完美运行,并执行其中的所有代码。
但是我现在添加了以下JQuery:
$("#need2Know").click(function(){
window.location ="URLString";
return false;
});
$("#nice2Know").click(function(){
window.location ="URLString";
return false;
});
当我在 HTML 文件中调用这部分代码时,onclick 处理将按预期执行。但是,一旦我将其粘贴到 JS 文件中(高于所有其他代码,其余代码仍在工作),onclick 处理就不再起作用了。
我使用以下 JQuery 库:
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
我的 JQ 文件是在这个库之后调用的。
对我来说很奇怪的是,代码在 HTML 中工作,但在 JS 文件中不起作用,尽管其余代码仍然像以前一样处理......
关于如何解决此问题的任何建议,以便可以在 JS 中执行点击处理?
目前,您使用的称为"直接"绑定,它只会附加到代码进行事件绑定调用时页面上存在的元素。由于尚未加载 DOM,因此不会附加任何事件处理程序。
您可以通过以下方法之一解决问题:
- 将代码包装在文档就绪处理程序中。
指定在 DOM 完全加载时要执行的函数。
$(document).ready(function() {
});
- 将对文件的引用移动到
<body>
元素的底部。
试试这段代码:
$("body").on("click","#nice2Know", function(){
window.location ="URLString";
return false;
});
相关文章:
- 当查询不在displayField中时,引导Ajax Typeahead不显示结果
- 使用createContainer将Meteor数据获取到React Native中时出现问题
- 当多个图像在源文件中时,如何从源文件中选择特定的图像
- 当屏幕键盘出现在手机中时,窗体会隐藏起来
- angularjs 中 $window.location.reload() 和 $route.reload() 之间的区
- '填隙'当所述项目不在容器中时,将一些项目与引导程序网格对齐
- 在将javascript附加到我的html中时遇到问题
- 当字符串位于双引号中时,无法设置val
- fs.statSync包含在函数中时抛出错误
- HTML5模式中的$location需要<基本>
- 在控制器中添加$location依赖项时,ng-click停止激发
- 为什么我的Mongoose DB模式之一可能是“;强制转换为未定义的“;当它的实例被放置在第二个模式中时
- onclick'放在JavaScript脚本中时无法工作
- 当图像在背景中时将其固定
- jQuery拖动到相对位置的可排序列表中时出现可拖动辅助对象位置问题
- 尝试将变量传递到对象中时的作用域问题'的方法构造函数
- 为什么自定义 JavaScript 文件放在客户端文件夹中时不在我的 Meteor 模板上呈现
- 只是 JQuery 可执行文件的一部分.当直接粘贴到HTML中时,一切正常(window.location)
- 按钮事件中window.location更改时,IE9 onbeforeunload调用了两次..最小繁殖
- 在angular中使用$location.path()时,Socket.io不连接