当试图用jQuery显示div元素时,我收到了这个错误:
[23:50:35.971] TypeError: p.easing[this.easing] is not a function @ file:///D:/html5%20puzzle/jquery.js:2
相关功能是:
function showWithAnimation(){
console.log('animation called');
$('#popup').show();
$("#popup").css({"top": "30%", "left": "30%"})
.animate({top:(($(window).height()/2)-($('#popup')
.outerHeight()/2))-70}, 1000, 'easeOutBounce')
.show();
}
该函数负责显示带有反弹动画的div,但是,div显示但没有反弹效果。
修改
我从这样的CDN中包含jQuery和jQueryUI库(按顺序):
<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js'></script>
<script src='http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.5/jquery-ui.min.js'>
</script>
答案 0 :(得分:112)
您需要为扩展的缓动选项包含jQueryUI。
我认为可能有一个选项只包括下载中的缓动,或者至少只包括基本库和缓动。
答案 1 :(得分:13)
对于那些拥有自定义jQuery UI构建(例如bower)的人,添加..\jquery-ui\ui\effect.js
中的效果核心。
答案 2 :(得分:10)
Jquery缓动插件在1.2版本上重命名了它们的效果函数名称。如果你有一些javascript取决于缓和而且它没有调用正确的效果名称,它将抛出此错误。
答案 3 :(得分:7)
包括这对我有用。
请在以下部分中提及以下内容。
<script src='http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.5/jquery-ui.min.js'>
答案 4 :(得分:4)
我尝试在div上启动幻灯片效果时遇到此错误。感谢上面的“我讨厌懒惰”的回答(我已经投了赞),我去寻找一个自定义的jQuery UI脚本,你实际上可以直接在jQuery ui网站http://jqueryui.com/download/上构建自己的文件。您所要做的就是标记您正在寻找的效果,然后下载。
我一直在寻找幻灯片效果。因此,我首先取消选中所有复选框,然后单击“幻灯片效果”复选框,然后页面会自动检查使幻灯片效果有效所需的其他组件。非常简单。
easeOutBounce是一种缓和效果,您需要选中“效果核心”复选框。
答案 5 :(得分:4)
如果您正在使用Bootstrap,那么Bootstrap的jQuery(如果包含在您的jQuery脚本标记下面)也可能会用另一个版本覆盖您的jQuery脚本标记。包括jQuery自己的CDN并删除Bootstrap提供的jQuery脚本标签是唯一对我有用的东西。
答案 6 :(得分:1)
对于遇到此错误的任何人,您都尝试过更新版本并确保存在effect core等,并且仍在挠头。检查文档中的animate()和其他语法。
我所做的只是写“ Linear”而不是“ linear”,并得到[this.easing]不是一个函数
$(“#main”)。animate({scrollLeft:'187px'},'slow','Linear'); //不好
$(“#main”)。animate({scrollLeft:'187px'},'slow','linear'); //好
答案 7 :(得分:1)
导入/somepath/to/directory
CDN对我有用。
jquery.easing
您可以在网页的底部添加此内容。
答案 8 :(得分:0)
我发现了问题:不要使用CDN(这会引起问题!),而是将jquery文件保存在服务器上的本地位置,然后问题就消失了。
答案 9 :(得分:0)
使用最新的引导程序4及更高版本,这不会影响您的用户界面