我是JS的新手,并遇到了一个问题。相册会导致错误,如下所示。
Uncaught TypeError: undefined is not a function script.js?ver=1.0:12
(anonymous function) script.js?ver=1.0:12
n.extend.each jquery.js?ver=1.11.0:1
n.fn.n.each jquery.js?ver=1.11.0:1
initialise script.js?ver=1.0:12
jQuery.ajax.success loader.js?ver=1.0:9
j jquery.js?ver=1.11.0:1
k.fireWith jquery.js?ver=1.11.0:1
x jquery.js?ver=1.11.0:1
bjquery.js?ver=1.11.0:1
然而,重新加载页面后,一切正常。可能是什么问题?
我已经包含了一个似乎有问题的script.js代码段(也可以通过开发人员工具看到)。如果我需要包含我的.php文件,请告诉我。
/*----------------------------------------------
F L E X S L I D E R
------------------------------------------------*/
jQuery(content+' .slider').each(function(index){
var thisid = jQuery(this).attr('id');
jQuery("#"+thisid+" .flexslider").flexslider({ - This line is causing error
controlsContainer: "#"+thisid,
animation: "fade",
slideshowSpeed: 7000,
animationDuration: 600,
slideshow: false,
directionNav: true,
controlNav: true,
smoothHeight: true,
touch: true,
video: true,
randomize: false
}); //end flexslider
});
答案 0 :(得分:0)
你得到第12行的原因是因为删除了所有不必要的空白区域来“压缩”script.js文件。如果您在开发人员工具窗口的JS源视图的左下角使用“漂亮的打印”图标(看起来像这个{}),您实际上会看到以下代码为您提供问题:
jQuery("#" + thisid + " .flexslider").flexslider({controlsContainer: "#" +
thisid,animation: "fade",slideshowSpeed: 7000,animationDuration: 600,
slideshow: false,directionNav: true,controlNav: true,smoothHeight: true,
touch: true,video: true,randomize: false});
原因很可能是flexslider函数在从flexslider脚本实际加载之前尝试调用。确保在调用函数之前加载了flexslider脚本,这样可以解决您的问题。