jQuery的1.9版本之后toggle()失效的解决
2018-03-11 16:03
477 查看
最近捣鼓技术发现现在高版本的jQuery的toggle方法失效了,找到了之前版本的源码对toggle功能的实现代码,并且看到很多前辈的博客,学到了很多,首先遇到这种情况我们应该先去查之前版本的源码进行研究,试着把那部分源码改写成一个插件,在自己的网页中引入这个插件即可,可以供长期使用。$.fn.toggle = function( fn, fn2 ) {
var args = arguments,guid = fn.guid || $.guid++,i=0,
toggler = function( event ) {
var lastToggle = ( $._data( this, "lastToggle" + fn.guid ) || 0 ) % i;
$._data( this, "lastToggle" + fn.guid, lastToggle + 1 );
event.preventDefault();
return args[ lastToggle ].apply( this, arguments ) || false;
};
toggler.guid = guid;
while ( i < args.length ) {
args[ i++ ].guid = guid;
}
return this.click( toggler );
}
var args = arguments,guid = fn.guid || $.guid++,i=0,
toggler = function( event ) {
var lastToggle = ( $._data( this, "lastToggle" + fn.guid ) || 0 ) % i;
$._data( this, "lastToggle" + fn.guid, lastToggle + 1 );
event.preventDefault();
return args[ lastToggle ].apply( this, arguments ) || false;
};
toggler.guid = guid;
while ( i < args.length ) {
args[ i++ ].guid = guid;
}
return this.click( toggler );
}
相关文章推荐
- jquery中toggle事件最新版本移除之后的解决
- jquery中的live在1.9版本以上失效的解决办法
- Jquery方法load之后导致js失效解决方法
- 在jquery 1.11.1版本中,如何实现jquery 1.9以下版本里面的toggle功能?
- jQuery 1.9较之前版本的变化,主要介绍移除方法的替代方法:.browser、.live、.die、.sub、.toggle
- [转]JQuery判断浏览器类型版本1.9和2.0之后的区别
- jquery 1.9 之后toggle不能用的问题
- jquery1.9以上 动态生成元素 live和on失效的解决方法
- jquery 1.9以上新版本不支持toggle()的解决方法
- jquery不支持toggle()高(新)版本的问题解决
- 替代jquery1.9版本以前的toggle事件函数(开关)
- mvc项目中,解决用Url.Content方法引用jquery文件后智能提示失效的办法
- js报TypeError $(...) is null错误,jquery失效的原因及解决办法
- jquery 中的$("obj").html('')中的html动态改变之后点击事件失效
- jquery 中 live() 对于js的需求版本导致不可用解决办法
- IntelliJ IDEA 更新版本之后,中文输入法不能正常使用的解决办法
- 解决Maven update project之后版本问题
- UpdatePanel 与Jquery.Thickbox 失效解决办法
- Jquery 1.9+后不支持jQuery.browser的解决方式
- jQuery 1.9不支持$.browser 怎么判断浏览器类型和版本