Существует очень хороший плагин, написанный на jQuery специально для этого типа функций ввода / вывода мыши.
Он называется hoverIntent.js
Он создает настраиваемую задержкуперед выполнением следующего действия слайда и т. д., отлично подходит для взаимодействия с меню.Вы также можете вызывать свои собственные функции для каждого из событий истечения срока действия.
Пример использования по умолчанию:
$("#menu li").hover( showMenu, fadeMenu)
, где fadeMenu и showMenu будут вашими jQuery-функциями для изменения внешнего вида.меню.
Чтобы создать собственную конфигурацию задержки, вы просто используете:
var config = {
over: showMenu,
timeout: 500, // number = milliseconds delay before fadeMenu is called
out: fadeMenu
};
$("#menu li").hoverIntent( config )
Редактировать:
Для вашего примера, пока триггер являетсячтобы показать скрытый div, вы можете использовать следующее:
var config = {
over: showMenu,
timeout: 500, // number = milliseconds delay before fadeMenu is called
out: fadeMenu
};
$("#cart-box a").hoverIntent( config );
function showMenu() {
jQuery("#cart-container").fadeIn('fast');
}
function fadeMenu() {
jQuery("#cart-container").fadeOut('fast');
}