(上)DblClick事件是一個本地JavaScript事件,而不是一個jQuery的事件
DblClick事件是不是跨瀏覽器一致的,看到這個票3歲,但在某些方面仍然有效:http://bugs.jquery.com/ticket/7876即使是現在序列在IE10中與FF/Chrome/Safari相同,但正如您所注意的那樣,仍然存在一些錯誤。
作爲一種變通方法,你可以使用這個段,而不是DblClick事件:
DEMO with custom dblclick
$('#test').on('click', function(event){
var t = this;
if (!t.clicks) t.clicks = 0;
++t.clicks;
if (t.clicks === 2) {
t.clicks = 0;
//here the kind of dclclick is fired ...
$(t).css({'background-color' : "red"});
}
setTimeout(function() {
t.clicks = 0
}, 500);//duration value can be change depending of your wishes
});
的其他解決辦法可能是綁定在鼠標按下/的mouseenter /鼠標離開/解除綁定DBLCLICK事件(懸停)處理程序,這樣的:
DEMO with mousedown/mouseenter/mouseleave
$('#test').hover(function() {
$(this).on('mousedown.cust', function() {
$(this).on('dblclick.cust', function() {
$(this).css({
'background-color': "red"
});
});
});
}, function() {
$(this).off('mousedown.cust dblclick.cust');
});
不知道爲什麼您刪除了我添加的小提琴。我懷疑有人會幫助你,而不能複製這個問題,這正是小提琴的用武之地。無論如何,我會把它放在一個評論中,它可以幫助其他人以及你不能刪除它的地方:http://jsfiddle.net/fH2z3/ –
順便說一句,它也在IE10中表現得那麼好。 –
不好意思。因爲我的母語不是英語,這是我第一次使用stackoverflow。我只是編輯了很多次的內容。我沒想到有人這麼快就回復了。請耐心等待我所做的一切。謝謝大家你的回覆! :) –