在很多个月里第一次(脸红),我升级了我的jQuery东西.我现在在:
> jquery-1.9.1.js
> jquery-ui-1.10.2.custom.js(使用了ThemeRoller,并包含了所有组件,包括效果核心,在其描述中提到了缓动)
我还升级到最新版本的jquery.multiselect和jquery.multiselect.filter插件.当我尝试关闭其中一个多选菜单时,我收到此错误:
TypeError: jQuery.easing[this.easing] is not a function jquery-1.9.1.js (line 9033)
请注意,虽然我在发生错误时使用了multiselect插件,但实际错误在主jQuery文件中.代码是:
/*9031*/ if ( this.options.duration ) { /*9032*/ this.pos = eased = jQuery.easing[ this.easing ]( /*9033*/ percent,this.options.duration * percent,1,this.options.duration /*9034*/ ); /*9035*/ }
解决方法
首次升级到jQuery 1.9时,整个站点中的各种动画可能会发生此错误.因为宽松效果的名字已经改变了!
见http://api.jqueryui.com/easings/
没有帮助的是jQueryUI.com网站中的旧示例尚未更新,导致人们认为旧的动画示例名称是正确的.
示例:accordion面板“bounceslide”动画现在是名为“eaSEOutBounce”的近似版本.在撰写本文时,字符串“bounceslide”仍然在网站的示例中:
http://api.jqueryui.com/accordion/#option-animate.