繁体   English   中英

jQuery backgroundcolor更改(.animate或.css)重新启动后只能工作一次吗?

[英]JQuery backgroundcolor changes (either .animate or .css) only work once after restart?

大家好,我遇到了一个很大的问题,我不太明白为什么会这样。

问题是,我得到了jquery插件jquery.color,以便可以每6秒交替更改4 div的颜色,以便第一个为白色时,其他为黑色,第二个为白色时,其他则为黑色,依此类推。 。

当我开始编程时,一切都工作正常,我以为自己正在取得进步,但我又尝试了一次,但是没有任何事情……我认为这可能是jquery color插件的问题,所以我决定尝试一下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更改之外的所有其他动画每次都能完美运行。

谁能帮我吗?? 请??

对于任何有此问题的人来说,这都是由于使用jquery的.load加载到div中的index.php和update.php之间存在冲突引起的。 因为我独立开发了所有东西,然后加入了它,所以我将jquery 1.7.1加载了两次,将一些php脚本加载了两次,依此类推...因此,基本上,我通过使用如下约束的.load来解决了所有问题:

$("#finalcontainer").load("updates.php #initialcontainer");

然后我只是将该页面的所有css移到了索引css文件中(我知道我应该已经做过,但是那个虫子使我丧命了!),而且我还将updates.php的所有.js动画都移到了索引中。的PHP。

因此,这就是我压缩错误的方式。 一直以来主要是我的错...

这是一个完全可以使用的jsFiddle:

我已对其进行了一些更正/更改(例如,间隔和动画说明),但这并不是一件大事-如果它可以工作,则您的代码应该可以工作。

如果这对您有效,而您的本地版本不起作用,请尝试制作一个像这样的小示例-仅包括jQuery和jQuery UI以及jsFiddle中的代码,然后看看是否可行。 如果是这样,则可能是某些拼写错误/未命中标记或任何其他语法错误导致其无法正常工作。

顺便说一句,您可能希望使用setTimeout而不是setInterval ,因为后者将每n毫秒重复一次调用,而setTimeout将运行一次。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM