jQuery new Object .bind
我遇到了一个我正试图理解的代码片段。 我没有在任何地方找到它。 该代码仍然正常工作。 它关于jQuery的.bind功能:
$(new Object()).bind()
jQuery的绑定函数用“new Object()”做什么? 有人可以详细说明吗?! 谢谢。
该声明本身不会做任何事情,除非可能导致运行时错误。 jQuery“bind()”方法至少需要一个参数。
即使使用参数,它也不会执行任何操作,因为它全部是关于事件处理程序绑定的。 这对于一个普通的JavaScript对象来说没有任何意义。
“bind()”调用通常是这样使用的(虽然有变化):
$('selector').bind('event-name', function(ev) { /* event handler code */ });
“选择器”字符串用于在页面中查找一个或多个DOM元素。
$(new Object()).bind("something", function(event, data){ });
这意味着你将一个具有参数“event”和“data”的函数委托绑定到新对象的“something”事件。 每当新创建的对象触发“某事”事件时,该函数就会执行。
我已经解决了。 对于有兴趣的人 - >有两个部分:
<a id="refButton" href="#">Click Me !!</a>
**Part 1:**
$(new Object()).bind("pressMe", function(event, data){
$(document).ready(function(){
$('#refButton').bind("click",function(){
alert("Hi There !!");
});
});
});
**Part 2**
if(some condition == TRUE){
$.event.trigger("pressMe");
}
因此,大家都知道“$(document).ready(function(){”会首先执行 - 但是 - 只有当Part2条件为TRUE时才会触发第1部分中定义的“pressMe”事件,该事件最终会监听click #ref按钮ID的事件。
但是对于我来说,空的新Object()是如何禁用“$(document).ready(function(){”)功能直到触发器被激活的。
但是,多谢所有回答。
链接地址: http://www.djcxy.com/p/17449.html