脚本被太快触发了

时间:2015-08-07 19:44:17

标签: jquery

我正在尝试使用Jquery替换我的滑块默认“1,2,3”导航。

我使用此代码:

//CHANGES SLIDER NUMBERS TO TEXT FOR NAVIGATION
$(".rslides_tabs .rslides1_s1 a").text("Automotive");
$(".rslides_tabs .rslides1_s2 a").text("Residential");
$(".rslides_tabs .rslides1_s3 a").text("Sign & Millwork");

//WRAPS SLIDER NAV IN CONTAINING DIV FOR CSS PURPOSES
$("ul.rslides_tabs").wrap("<div class='rslides_wrap'></div>");

我的问题是,有一半的时间我加载它运行的页面,有一半的时间没有。我觉得它有时会被称为太快或者某种东西。我已经尝试将它包装在Window.Onload和Document.Ready(以及两者的组合)中,但它仍然随机地在页面加载时不起作用。我也试过上面的代码&lt;头&gt;标签,就在&lt;之前/ body&gt;标签,但这没有什么区别。

有关我可以采取哪些措施使其在100%的时间内正常工作的建议?

http://tcgi.com.lindsayviscount.com/

2 个答案:

答案 0 :(得分:0)

我不确定您使用的是哪种浏览器,但在查看源代码后,我注意到以下内容:

  • JS正在构建最初的1,2,3
  • 汽车,住宅和标牌&amp; Millwork有专门的.ready(){}
  • 您正在使用jQuery 1.11.2和1.10.2而无法解决冲突
  • 您已将metaslider放入setTimeout()区块

代码清理的一些建议:

  • 绝对删除$(window).load(function() {
  • 坚持使用jQuery的一个版本

<强> TL; DR;

问题的可能原因是setTimeout()创建了一个单独的线程,因此当汽车,住宅和Sign&amp; amp;的代码时,1,2,3无法被定位。已经召集了Millwork。

答案 1 :(得分:0)

你可以把代码放在一个函数中并编辑你的html:

<body onload="yourFunction()">

对不起,如果这不是你想要的,因为我没有安静地理解你说的话