我_jas的JS和我的库在jQuery中很糟糕 . 它有标签tabber.js(来自2006年的代码),它有一个标签onclick事件附加到DOM,调用 return false
.
tabberObj.prototype.init = function(e)
{
DOM_a = document.createElement("a") ;
DOM_a.appendChild( document.createTextNode( t.headingText ) ) ;
DOM_a.href = "javascript:void(null);" ;
DOM_a.title = t.headingText ;
DOM_a.onclick = this.navClick ;
...
};
tabberObj.prototype.navClick = function(event)
{
...
return false;
};
Here is tab code其中有点击处理程序(第311和265行) .
我的图书馆里有:
$(document).bind('click.terminal', function(e) {
var sender = $(e.target);
if (!sender.closest('.terminal').hasClass('terminal') &&
settings.onBlur(self) !== false) {
self.disable();
}
});
我的代码会解雇吗在JS中返回false是否与jQuery中的相同 . 将event.preventDefault()替换返回false会使我的代码运行吗?
从症状看起来我的功能没有被执行 . 我尝试使用 wget
获取整个应用程序,但它没有运行 .
1 回答
如果您的意思是选项卡上有
onclick
属性:(注意你需要
return
in 属性),或者他们得到一个分配给反射属性的处理程序:...然后在该处理程序中执行
return false
将阻止单击的默认操作,但不会停止传播 . 更多(在我的博客上):The story on return false但是请注意,旧的DOM0样式处理程序(如上所述)相对于DOM2样式处理程序(如jQuery添加 is undefined )而触发的顺序 . 有些浏览器首先触发DOM0处理程序,然后是DOM2处理程序;其他人则反过来做 . 它没有做任何事情来阻止传播(特别是,没有什么可以阻止立即传播到同一元素上的其他处理程序),但它仍然值得一提 .