双击被阻止,但阻止默认值不起作用
Double click prevented but prevent default does not work
我使用的是这篇文章中的代码,双击阻止有效,但按钮仍然没有响应preventDefault
有人能伸出援手吗?
js:
var myBtn = $('.myLink');
var handler = function(e){
e.preventDefault();
console.log("prevent 2x click");
$(this).unbind('click');
setTimeout(function(){ myBtn.click(handler); }, 500);
}
myBtn.click(handler);
html:<a class='myLink' href="#">my link to click</a>
原因是,当您解除绑定处理程序(具有preventDefault)时,在短时间内再点击一次并不能阻止默认行为。因此,您可以附加一个专用的处理程序来防止默认,并取消绑定只执行其他逻辑的处理程序。试试这个方法:
var myBtn = $('.myLink');
var handler = function(e){
$(this).unbind('click', handler); //unbind only your handler
setTimeout(function(){
myBtn.click(handler); }
, 500);
}
myBtn.click(preventDefault); //have this bound to the anchor to prevent the default behavior always
myBtn.click(handler);
function preventDefault(e){
e.preventDefault();
}
演示
相关文章:
- select中布尔值的Angularjs ng值不起作用
- 对照数组脚本检查文本框中的值不起作用
- Javascript - 多维设置值不起作用
- 在调用中使用返回的json值不起作用
- 双击被阻止,但阻止默认值不起作用
- Javascript最大值和最小值不起作用
- jQuery 循环 .each() JSON 键/值不起作用
- 当浮点部分为空时,从 JQuery 中的输入元素获取数字值不起作用
- 隐藏元素取决于 if/else 语句的值不起作用
- 单击复选框时汇总隐藏字段的值不起作用
- 为函数中的现有数组(全局变量)分配新值不起作用.为什么
- Javascript - 单击时更改输入值不起作用
- 使用 ajax 传递 # 值不起作用
- Jquery get url 值不起作用
- 在模式弹出窗口中显示.jpg和.txt文件值不起作用
- 获取 $_GET 值不起作用
- am图表值轴最大值不起作用
- 主干对象默认值不起作用
- 事件阻止默认值不起作用
- 滑块默认值不起作用