大家好,我有一个很大的问题,我不太明白为什么会这样。
问题是,我得到了jquery插件jquery.color,这样我可以每6秒交替改变4个div的颜色,这样当第一个是白色时,其他的是黑色,当第二个是白色时其他是黑色等等。
当我开始编程时,一切都正常工作,我认为我正在取得进展,但我再试一次,没有......我认为这可能是jquery color plugin的错,所以我决定给jquery UI插件一个去。我清空了缓存并重新启动了mac,尝试了“新”插件并且它再次工作,所以我开始编程一点,再次尝试,BAM同样的事情发生......
奇怪的是,完全相同的代码在重新启动后仍可正常工作,但第二次无效...
我使用了以下jquery插件:jquery.urlrewrite,jquery.easytabs,jquery.ae.image.resize,当然还有jquery-ui。
我用于测试目的的.JS代码的小片段是:
var intervalo = window.setInterval(caneco, 6000);
function caneco(){
$("#triangulo").animate({
top: "120px"
}, 1000 );
$("#juntaimg").animate({
left: "-451px"
}, 1000 );
$("link1").animate({
'background-color': "black"
}, 1000);
}
最奇怪的是,除了backgroundColor之外的所有其他动画更改都能完美地运行...
任何人都可以帮我吗?请??
答案 0 :(得分:1)
对于有这个问题的人来说,这是由于index.php和update.php之间的冲突,它是使用jquery的.load加载到div中的。由于我独立开发了所有内容,然后加入了它,我将jquery 1.7.1加载了两次,有一些php脚本被加载两次等等......所以基本上我通过使用这样的约束.load来解决所有问题:
$("#finalcontainer").load("updates.php #initialcontainer");
然后我只是将该页面的所有css移动到索引css文件(我知道我应该已经完成了但是这个bug已经杀了我!)而且我还将updates.php的所有.js动画移动到index.php。
这就是我如何压扁我的错误。而且一直以来都是我的错...
答案 1 :(得分:0)
这是一个完全正常的jsFiddle:
我纠正/改变了一点(例如间隔和动画描述),但这不应该是一件大事 - 如果它有效,你的代码应该可以工作。
如果这对您有用而您的本地版本没有,请尝试这样做一个小例子 - 只需包含jQuery和jQuery UI以及jsFiddle中的代码,看看是否有效。如果是这样,它可能是一些错字/遗漏标签或任何其他语法错误,使其无法正常工作。
顺便说一下,您可能需要setTimeout
而不是setInterval
,因为后者会每n毫秒重复一次调用,而setTimeout
则会运行一次。