var $cr = $("#cr"); //jQuery对象
$cr.click(function(){
if($cr.is(":checked")){ //jQuery方式判断
alert("感谢你的支持!你可以继续操作!");
}
})
未放入 $(document).ready(function(){}) 为什么会无效!
$cr.click(function(){
if($cr.is(":checked")){ //jQuery方式判断
alert("感谢你的支持!你可以继续操作!");
}
})
未放入 $(document).ready(function(){}) 为什么会无效!
在 body 的 onload 事件中执行你的 var $cr = $("#cr"); 如果是在 id=cr 的标记加载完成之后执行的,那也是有效的
在 body 的 onload 事件中执行所以说,当代码执行到你获取文档对象也就是
var $cr = $("#cr"); //jQuery对象
并且试图监听事件的时候,看你放到位置来决定他有没有找到id为:ce的元素,或者说id为ce的元素有没有生成,完全取决于执行顺序,页面执行是从上到下的.所以若你的获取对象操作是在ce操作之前,是肯定获取不到的,也就无法对他进行监听.
所以,最保险的方法就是等整个文档加载完毕,也就是ready里面,再对对象进行监听
$(document).ready(function(){
//这里指向的是body.onload事件?
});下面这个我是截取的JQ里的代码:DOMContentLoaded = function() {
if ( document.addEventListener ) {
document.removeEventListener( "DOMContentLoaded", DOMContentLoaded, false );
jQuery.ready();
} else if ( document.readyState === "complete" ) {
// we're here because readyState === "complete" in oldIE
// which is good enough for us to call the dom ready!
document.detachEvent( "onreadystatechange", DOMContentLoaded );
jQuery.ready();
}
},好像指向的是 document.readyState === "complete" 吧?