【发布时间】:2016-01-18 14:27:13
【问题描述】:
我有一个相当大的 html 页面,我注意到我的点击显示/隐藏过程似乎有点迟钝。
我还发现,如果我使用“mouseenter”代替“click”,响应几乎是瞬时的(而不是使用“click”时的 2 秒)。
$("button.showhide").click(function() { $("#"+$(this).attr("id")+"-1").toggle() });
versus
$("button.showhide").mouseenter(function() { $("#"+$(this).attr("id")+"-1").toggle() });
有什么办法可以让click事件和mouseenter事件一样快?
谢谢。
编辑: 以下内容是否有助于解释这种行为? (没有提到 mouseenter 的“javascript 事件”。)
.click() 将事件处理程序绑定到“单击”JavaScript 事件,或在元素上触发该事件。
.mousedown() 将事件处理程序绑定到“mousedown”JavaScript 事件,或在元素上触发该事件。
.mouseenter() 绑定要在鼠标进入元素时触发的事件处理程序,或在元素上触发该处理程序。
【问题讨论】:
-
您尝试过
.mousedown事件吗?释放鼠标按钮后触发点击,所以事件顺序为mousedown->mouseup->click。 -
是的,我确实尝试过 mousedown 事件,但它和 click 事件一样慢。
标签: javascript jquery