我点击事件的锚点很少:
$$('.someanchor').invoke('observe', 'click', somefunction );
单击锚点后,浏览器会滚动到顶部。
我尝试在return false
的末尾插入somefunction
,但它仍然向上滚动。
通常我会使用类似的东西:
Event.observe('somelement', 'click', somefunction, false);
但这不适用于元素集合。那么我如何从return false
声明中invoke
?
答案 0 :(得分:2)
在somefunction
中,在函数体的末尾添加以下内容(确保e
是最后一个参数,并用于Event
对象):
e.preventDefault();
答案 1 :(得分:2)
“e.preventDefault()”会阻止锚定默认行为,但不会阻止事件传播(冒泡)。我会使用“Event.stop(event)”来中和两者,只是为了安全起见。