/*! * jquery.mousedelay.js v1.2 * http://www.planeart.cn/?p=1073 * copyright 2011, tangbin * dual licensed under the mit or gpl version 2 licenses. */ (function ($, plugin) { var data = {}, id = 1, etid = plugin + 'etid'; // 延时构造器 $.fn[plugin] = function (speed, group) { id ++; group = group || this.data(etid) || id; speed = speed || 100; // 缓存分组名称到元素 if (group === id) this.data(etid, group); // 暂存官方的hover方法 this._hover = this.hover; // 伪装一个hover函数,并截获两个回调函数交给真正的hover函数处理 this.hover = function (over, out) { over = over || $.noop; out = out || $.noop; this._hover(function (event) { var elem = this; cleartimeout(data[group]); data[group] = settimeout(function () { over.call(elem, event); }, speed); }, function (event) { var elem = this; cleartimeout(data[group]); data[group] = settimeout(function () { out.call(elem, event); }, speed); }); return this; }; return this; }; // 冻结选定元素的延时器 $.fn[plugin + 'pause'] = function () { cleartimeout(this.data(etid)); return this; }; // 静态方法 $[plugin] = { // 获取一个唯一分组名称 get: function () { return id ++; }, // 冻结指定分组的延时器 pause: function (group) { cleartimeout(data[group]); } }; })(jquery, 'mousedelay'); //打开搜索 $(".open-search").click(function(e) { if($(this).hasclass("open-search-show")){ $(this).removeclass("open-search-show"); }else{ $(this).addclass("open-search-show"); } $(".top-search").stop(true, true).fadetoggle(); $(document).on("click", function() { $(".top-search").stop(true, true).fadeout(); $(".open-search").removeclass("open-search-show"); }); e.stoppropagation(); }); $(".top-search").on("click", function(e) { e.stoppropagation(); }); //语言版本 $(".search-lang dd").hover(function(e) { $(this).find("figure").stop(true,true).fadetoggle('fast'); }); $(".top-menu li").each(function() { var num=$(this).find(".sub").find("dd").length if(num>=1){ $(this).addclass("has-sub"); $(this).mousedelay(false).hover(function(e) { $(this).addclass("aon hover"); $(this).siblings().removeclass("aon hover"); $(this).find(".sub").slidedown('fast'); },function(){ $(this).removeclass("aon hover"); $("#m"+m).addclass("aon"); $(this).find(".sub").slideup('fast'); }); } }); //移动端 $(".wap-open").click(function(e) { if($(this).hasclass("wap-close")){ $(this).removeclass("wap-close"); }else{ $(this).addclass("wap-close"); } $(".top-menu").stop(true,true).slidetoggle('fast'); });