jQuery的1.9版本之后toggle()失效的解决

最近捣鼓技术发现现在高版本的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 );
}


猜你喜欢

转载自blog.csdn.net/m0_38073011/article/details/79516875
今日推荐