Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var TimeoutHover = function(items, activeClass, deferTime)
- {
- var _deferTime = deferTime || 200;
- var _deferTimer = null;
- var _activeClass = activeClass || 'active';
- if (!items) {
- throw new Error("Argument 'items' is empty");
- }
- var $items = $(items);
- function menuItemMouseEnter(e) {
- if (_deferTimer) clearTimeout(_deferTimer);
- _deferTimer = setTimeout(menuItemActivate, _deferTime, e.currentTarget);
- }
- function menuItemActivate(target) {
- var $target = $(target);
- if (!$target.is('.'+_activeClass)) $items.removeClass(_activeClass);
- $target.addClass(_activeClass);
- }
- function menuItemMouseLeave(e) {
- if (_deferTimer) clearTimeout(_deferTimer);
- _deferTimer = setTimeout(menuItemDeactivate, _deferTime);
- }
- function menuItemDeactivate() {
- $items.removeClass(_activeClass);
- }
- function attachEvents() {
- $items.hover(menuItemMouseEnter, menuItemMouseLeave);
- }
- attachEvents();
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement