我想这样做:当您点击页面上的链接时,它会正常打开链接,但是当您双击该链接时,它会提醒链接的'href'属性。
但是,当我尝试双击链接时,它将始终打开链接。有什么想法吗?
答案 0 :(得分:1)
也许这只是一个错字:您正在寻找的事件名为ondblclick
,而不是ondbclick
。
答案 1 :(得分:1)
要避免链接被打开,您可能希望改为使用right-clicks。
答案 2 :(得分:1)
首次点击双击后链接会打开,因此您需要添加一个时间延迟来确定哪个是时间延迟。以下是一些代码(使用jQuery JavaScript库以简化),适用于除Internet Explorer(try it out)之外的所有浏览器。如果你能弄明白为什么没有,我想知道。
$('a').click(function(event) {
var elem = $(this),
clickTimeout = elem.data('clickTimeout');
if(clickTimeout) {
// Double click; cancel the single click timeout
clearTimeout(clickTimeout);
elem.data('clickTimeout', null);
alert(elem.attr('href'));
} else {
// Might be a single click; wait and see
elem.data('clickTimeout', setTimeout(function() {
// Single click; timeout was not cancelled
elem.data('clickTimeout', null);
// Navigate to the link's URL
window.location.href = elem.attr('href');
}, 500));
}
// Stops propagation and prevents default action
return false;
});
答案 3 :(得分:0)
双击即可双击。因此,它会触发click事件。
答案 4 :(得分:0)
因为onclick事件在ondblclick事件之前被触发。 这就是为什么ondblclick没有被执行的原因 - >首先加载链接。
答案 5 :(得分:0)
这很棘手,因为事件的顺序在所有浏览器中都不一样。查看此文章:http://unixpapa.com/js/mouse.html下双击的部分。
您可以取消单击链接的默认操作,并为click事件编写自己的处理程序。