如果不在 onLoad 函数中,jQuery 事件处理程序不起作用
jQuery event handler not working if not in the onLoad function
我有这个脚本:
<script>
window.onload = function() {
setTimeout(function() {
$($('div')).css('background-color', 'yellow')
}, 3000)
$('div').eq(0).draggable()
$('p').click(function() {
$(this).css('background-color', 'gray')
})
$('p').click(function() { /* *** */
console.log($(this).offset())
})
}
</script>
如果我将标记为***
的行移动到下面,而不是在要调用的onLoad
函数内,它就不再起作用了。
文档加载后如何调用 jQuery 代码?(完整示例页: http://pastebin.com/6zHipk4i (
onload
在加载对象后立即触发,而jQuery的ready()
在检测到所有资产都已加载时触发。如果需要,可以在正文上使用unload
,以便在页面完全加载时执行。但是,如果你使用的是jQuery,最好用jQuery的方式做:
$(document).ready(function(){
$('p').click(function() { console.log($(this).offset()) } );
});
或者你有时会看到同样的东西写成:
$(function(){
$('p').click(function() { console.log($(this).offset()) } );
});
相关文章:
- Jquery事件处理程序仅适用于匿名函数
- 如何在jQuery事件处理程序中存储和重用超时
- jQuery 事件处理程序堆叠
- 动态添加对象的jQuery事件处理程序
- event.stopPropagation() 在 jQuery 事件处理程序中不起作用
- Typescript 此关键字在 jquery 事件处理程序中不起作用
- Jquery事件处理程序未启动
- 我在jQuery事件处理和隐藏/显示图像元素方面做错了什么
- 有没有办法扩展已经绑定的jQuery事件处理程序
- JQuery事件处理程序在事件发生前激发
- 正在取消绑定jQuery事件处理程序
- 如何在选择的按钮上动态/不断地绑定jQuery事件处理程序
- Jquery 事件处理程序未在 Rails 应用程序中触发
- 如何获取 jQuery 事件处理程序返回值
- 我的javascript变量在jquery事件处理程序上没有更新
- 我的按钮的 jQuery 事件处理程序只工作一次
- JavaScript 变量不会保留在 jQuery 事件处理程序中
- 如何将 JQuery 事件处理程序分配给特定事件
- JQuery - 事件处理程序中的 accessss 对象属性
- 如果不在 onLoad 函数中,jQuery 事件处理程序不起作用