我添加了此脚本
<script type="text/javascript">
var x = 2;
//console.log('Not broken');
$('.email_image li:gt(0)').css({opacity:0});
setInterval(function() {
// function slideshow() {
var m = $('.email_image li').size();
x += 1;
console.log('Not broken');
if (x > m) {
x = 1;
}
$(".email_image ul li:visible").animate({
opacity: 0
});
$(".email_image ul li:nth-child(" + (x) + ")").animate({
opacity: 1
});
// }
}, 5000);
</script>
到我的模板的index.php。我想使用该脚本为一些图像集创建一个简单的幻灯片。循环只运行一次并停止。在Joomla之外,它完美无缺,但在Joomla,它只运行一次并停止。 Joomla是否存在setInterval函数的问题。围绕这个问题的方法是什么?
这里分别是Joomla和Joomla演示的链接 Joomla demo Outside Joomla demo
答案 0 :(得分:1)
即使jQuery路径是正确的并且包含正常但$
返回jQuery以外的东西(看起来像冲突):
function $(el){if(!el)return null;if(el.htmlElement)return Garbage.collect(el);if([window,document].contains(el))return el;var type=$type(el);if(type=='string'){el=document.getElementById(el);type=(el)?'element':false;}
if(type!='element')return null;if(el.htmlElement)return Garbage.collect(el);if(['object','embed'].contains(el.tagName.toLowerCase()))return el;$extend(el,Element.prototype);el.htmlElement=function(){};return Garbage.collect(el);}
以下是控制台上出现的错误:
Uncaught TypeError: Cannot call method 'css' of null
对于jQuery,请尝试使用$
替换jQuery
的每个实例。
或者你可以$
这样:
(function($){
// your code here
})(jQuery);