我有一个可以在点击时展开/收缩的表格。它工作得很好,但是有一个问题,有时用户可能想要复制表格中的文本,因此他们的行收缩(点击时)
是否有某种方法可以避免点击时触发事件,但按住鼠标和/或标记文本则不会触发事件?
示例页面: http://resihop.nu/search?from=&to=&when=&got_car=1&code=
如果您能提供一个示例,我将非常感激,我不太习惯 javascript。 :)
最佳答案
创建事件mouseup
- 而不是click
。您还可以检查 mousedown
和 mouseup
之间的时间长度来决定是否应该处理点击。
类似于 this应该可以解决这个问题:
var lastMouseUp = 0, lastMouseDown = 0;
$('tr').bind('mouseup mousedown', function(e){
var ms = new Date().getTime();
e.type == 'mousedown' ? lastMouseDown = ms : lastMouseUp = ms;
if(e.type != 'mousedown' && (Math.abs(lastMouseUp - lastMouseDown) < 300))
console.log(Math.abs(lastMouseUp - lastMouseDown) + ' process click') // valid click
});
关于javascript - Jquery点击事件但不按住/标记文本事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4455416/