2

我添加了这个脚本

<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 外演示的链接

4

1 回答 1

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);
于 2012-04-23T11:28:25.817 回答