我有骨干视图和点击事件,它们应该调用函数
events{
"click .class": "myFunction"
}
问题是,有些事件只是做他们应该做的事情,而有些事件导致窗口刷新(例如,当我在页面中间的内容时,它会把我抛到页面顶部)
jquery 1.11以不同方式处理这些事件。
在这个地方
// Triggered event must either 1) have no
// namespace, or
// 2) have namespace(s) a subset or equal to
// those in the bound event (both can have
// no namespace).
正常事件冒泡但
while ((matched = handlerQueue[i++])
&& !event.isPropagationStopped()) {
event.currentTarget = matched.elem;
j = 0;
while ((handleObj = matched.handlers[j++])
&& !event
.isImmediatePropagationStopped())
并且只是return event.result;
事件,刷新窗口进入此块:
// Triggered event must either 1) have no
// namespace, or
// 2) have namespace(s) a subset or equal to
// those in the bound event (both can have
// no namespace).
if (!event.namespace_re
|| event.namespace_re
.test(handleObj.namespace)) {
event.handleObj = handleObj;
event.data = handleObj.data;
ret = ((jQuery.event.special[handleObj.origType] || {}).handle || handleObj.handler)
.apply(matched.elem, args);
也许有人都遇到过这个问题...
答案 0 :(得分:3)
是否有任何触发事件<a>
标记的元素?也许是SRC&#34;#&#34;?如果是这样,请擦除SRC值并确保e.preventDefault之类的内容与事件相关联。
答案 1 :(得分:1)
您定义功能的地方:
myFunction: function(event){ //<--make sure you have the "event" argument
event.preventDefault(); // <--Add this statement in your function
}