我正在使用jQuery并将此代码放在我的javascript中:
function HideMe(itemID) {
var myDiv = 'item_' + itemID;
$(myDiv).fadeOut("slow");
}
但它给了我这个错误: fadeOut
不是函数。
答案 0 :(得分:103)
This will happen if you're using the "slim" version of jQuery. Only the "full" version of jQuery includes animation effects.
Try grabbing the "full" version of jQuery from the jQuery downloads page and including that in your page (or including a full version of jQuery from a CDN from your page).
答案 1 :(得分:15)
你在那个页面上有另一个javascript库吗?您似乎拥有hide
函数,并且$
已定义(原型,例如,也有hide
函数。)
如果是这种情况,请尝试:
jQuery("#item_0").fadeOut("slow");
答案 2 :(得分:11)
我遇到了这个错误,因为我使用的是瘦身版的jQuery。如果你下载完整版,你应该没问题。
答案 3 :(得分:4)
即使选择器没有返回集合中的任何项目,如果正确加载了jQuery,函数调用也会起作用(不会生成此错误)。要么页面中存在冲突,或者根本没有加载。你可以尝试
jQuery(myDiv).fadeOut("slow");
或研究为什么没有加载jQuery。
P.S。:如果按id选择,请不要忘记选择器中的#
。
答案 4 :(得分:3)
此外,您可能忘记了选择器中的#
(除非您在标记中有<item_1 />
之类的内容)。
var myDiv = '#item_' + itemID;
jQuery使用CSS选择器来搜索元素,因此如果没有#
,您将获得带有标记item_x
的每个元素而不是ID。
答案 5 :(得分:2)
看起来jquery没有正确附加到页面上。
检查您与jQuery的链接。
答案 6 :(得分:1)
您有liDiv
而不是myDiv
。尝试:
function HideMe(itemID) {
var myDiv = 'item_' + itemID;
$(myDiv).fadeOut("slow");
}
答案 7 :(得分:1)
尝试将其保留在
中$(document).ready(function(){
// your code. and don't forget the '#' in front of item.
});
看起来你正试图在jQuery / DOM加载之前调用该函数。
答案 8 :(得分:1)
由于Jquery库的精简版版本,它发生在我身上。完整版的Jquery库包括动画。
可在here上找到的jQuery CDN
答案 9 :(得分:0)
将.html模板移动到wordpress模板时,我发现它会定期弹出。
两个原因,并且控制台错误可能具有欺骗性:
控制台中的错误可以将您发送到错误的路径。可能不是真正的问题。对我而言,第一个原因是订单,您已在其中设置了要加载的.js文件。在html easy中,以与主题模板相同的顺序放置它们。在Wordpress中,您需要以正确的顺序将它们排入队列,但是如果它们没有以正确的顺序出现,还需要设置优先级,
第二件事是页眉或页脚中的.js文件。将他们移到页脚可以解决问题-经过一天的调试工作,它为我完成了任务。通常并不重要,但是对于具有许多js库的复杂页面,可能会!