我想推遲jquery中的懸停事件。當用戶將鼠標懸停在鏈接或標籤上時,我正在從文件中讀取數據。如果用戶只是在屏幕上移動鼠標,我不希望此事件立即發生。有沒有辦法延遲事件發生?延遲jquery懸停事件?
謝謝。
示例代碼:
$(function() {
$('#container a').hover(function() {
$('<div id="fileinfo" />').load('ReadTextFileX.aspx',
{filename:'file.txt'},
function() {
$(this).appendTo('#info');
}
);
},
function() { $('#info').remove(); }
});
});
UPDATE:(09年1月14日) 加入HoverIntent插件上面的代碼後,變爲以下來實現它。實施起來非常簡單。
$(function() {
hiConfig = {
sensitivity: 3, // number = sensitivity threshold (must be 1 or higher)
interval: 200, // number = milliseconds for onMouseOver polling interval
timeout: 200, // number = milliseconds delay before onMouseOut
over: function() {
$('<div id="fileinfo" />').load('ReadTextFileX.aspx', {filename:'file.txt'},
function() {
$(this).appendTo('#info');
}
);
}, // function = onMouseOver callback (REQUIRED)
out: function() { $('#info').remove(); } // function = onMouseOut callback (REQUIRED)
}
$('#container a').hoverIntent(hiConfig)
}
感謝爲hoverIntent – JavaKungFu 2014-12-18 00:37:41