脚本在JSfiddle中运行良好但在现场不行

时间:2012-07-27 19:00:02

标签: javascript jquery html

我正在处理在单击图像时显示/隐藏div并在页面加载时随机显示div的功能。我不太确定它为什么在测试区域(JSfiddle)工作,但在我将它实现到网站时却没有。

这里是小提琴的链接:http://jsfiddle.net/JmVUx/17/

这是我正在处理的网站的演示:http://sjdunham.com/test/yzn/

我错过了什么吗?不太确定两者之间可能有什么区别。我已经尝试删除对其他脚本的任何其他引用但仍然没有去。我在检查器的演示站点上看不到任何错误。我在过去的4个小时里一直盯着这个,我不知道是什么原因引起了这个问题。

3 个答案:

答案 0 :(得分:3)

网站上还有其他<a>个元素。请改用$("a.control"),并使用.eq代替$($(...).get(x))

答案 1 :(得分:0)

我检查了你的两个代码,发现它们有一些不同的东西:

var randomIndex = Math.floor((Math.random() * 100) + 1)%2; // Site version
var randomIndex = Math.floor((Math.random() * 100)+ 1)%3;  // jsFiddle version

再次检查所有内容。也许你会得到答案。 它应该是随机的两种实现,但它可能不够随机。我的意思是:它可能导致大量相同的randomIndex,因此在加载页面时无法检查差异。

答案 2 :(得分:0)

您正在使用Cufon font,并且在使用dom的{​​{1}}所做的任何更改需要刷新后才能使用Cufon font生效,请在最后添加此行代码,即

Cufon.refresh();

由于// other code $('#' + field + '-gallery, #' + field + '-tag').fadeIn("slow"); Cufon.refresh(); // without this line your dom won't refresh (only for cufon font)

p中的所有内容都被cufon替换为以下代码
Cufon.replace(...)

Another answer on so