我们的网站上有一个事实页面,其中包含以下代码:
<div class='buttonplacer'>
<button class="facts-button1">Fun Fact #1</button>
<button class="facts-button2">Fun Fact #2</button>
<button class="facts-button3">Fun Fact #3</button>
<button class="facts-button4">Fun Fact #4</button>
<button class="facts-button5">Fun Fact #5</button>
<button class="facts-button6">Fun Fact #6</button>
</div>
</div>
<script>
jQuery(".facts-button1").click(function(){
jQuery('#fact-img').attr('src', '/img/backgrounds/fact1-img.png');
jQuery("#fact1").removeClass("hide");
jQuery("#fact-standaard").addClass("hide");
jQuery("#fact2").addClass("hide");
jQuery("#fact3").addClass("hide");
jQuery("#fact4").addClass("hide");
jQuery("#fact5").addClass("hide");
jQuery("#fact6").addClass("hide");
});
jQuery(".facts-button2").click(function(){
jQuery('#fact-img').attr('src', '/img/backgrounds/fact2-img.png');
jQuery("#fact2").removeClass("hide");
jQuery("#fact-standaard").addClass("hide");
jQuery("#fact1").addClass("hide");
jQuery("#fact3").addClass("hide");
jQuery("#fact4").addClass("hide");
jQuery("#fact5").addClass("hide");
jQuery("#fact6").addClass("hide");
});
jQuery(".facts-button3").click(function(){
jQuery('#fact-img').attr('src', '/img/backgrounds/fact3-img.png');
jQuery("#fact3").removeClass("hide");
jQuery("#fact-standaard").addClass("hide");
jQuery("#fact2").addClass("hide");
jQuery("#fact1").addClass("hide");
jQuery("#fact4").addClass("hide");
jQuery("#fact5").addClass("hide");
jQuery("#fact6").addClass("hide");
});
jQuery(".facts-button4").click(function(){
jQuery('#fact-img').attr('src', 'img/backgrounds/fact4-img.png');
jQuery("#fact4").removeClass("hide");
jQuery("#fact-standaard").addClass("hide");
jQuery("#fact2").addClass("hide");
jQuery("#fact3").addClass("hide");
jQuery("#fact1").addClass("hide");
jQuery("#fact5").addClass("hide");
jQuery("#fact6").addClass("hide");
});
jQuery(".facts-button5").click(function(){
jQuery('#fact-img').attr('src', '/img/backgrounds/fact5-img.png');
jQuery("#fact5").removeClass("hide");
jQuery("#fact-standaard").addClass("hide");
jQuery("#fact2").addClass("hide");
jQuery("#fact3").addClass("hide");
jQuery("#fact4").addClass("hide");
jQuery("#fact1").addClass("hide");
jQuery("#fact6").addClass("hide");
});
jQuery(".facts-button6").click(function(){
jQuery('#fact-img').attr('src', '/img/backgrounds/fact6-img.png');
jQuery("#fact6").removeClass("hide");
jQuery("#fact-standaard").addClass("hide");
jQuery("#fact2").addClass("hide");
jQuery("#fact3").addClass("hide");
jQuery("#fact4").addClass("hide");
jQuery("#fact5").addClass("hide");
jQuery("#fact1").addClass("hide");
});
</script>
</div>
<div class="col-md-1"> </div>
<?php $lang_code = icl_object_id(15,'page', true, ICL_LANGUAGE_CODE); ?>
<div id="facts-right" class="col-md-4" >
<div id="fact-standaard">
<?php the_field( "fact_1", $lang_code ); ?></div>
<div id="fact1" class="hide">
<?php the_field( "fact_1", $lang_code); ?>
</div>
<div id="fact2" class="hide">
<?php the_field( "fact_2", $lang_code ); ?>
</div>
<div id="fact3" class="hide">
<?php the_field( "fact_3", $lang_code ); ?>
</div>
<div id="fact4" class="hide">
<?php the_field( "fact_4", $lang_code ); ?>
</div>
<div id="fact5" class="hide">
<?php the_field( "fact_5", $lang_code ); ?>
</div>
<div id="fact6" class="hide">
<?php the_field( "fact_6", $lang_code ); ?>
</div>
我们想做的是让它成为一个定时事件。因此事实每5秒钟就会发生变化,但仍然具有现在的点击功能。有谁知道这样做的方法?
答案 0 :(得分:1)
使用 setInterval 功能每5秒启动一次点击
var i=1;
setInterval(function(){
jQuery(".facts-button"+i).click();
i++;
if(i==7)
i=1;
}, 5000);
答案 1 :(得分:1)
试试这个,
var arrId=["#fact1","#fact2","#fact3","#fact4"];// you can add more
var arrImg=["fact1-img.png","fact2-img.png","fact3-img.png","fact4-img.png"];
var counter=0;
var currentFact=1;// for selected fact id;
// set interval to do the task for above array variables
setInterval(function(){
if(counter == arrId.length){
counter =0; // reinit counter
}
jQuery("#fact-standaard").addClass("hide");
for(var i=0,l=arrId.length;i<l;i++){
if(currentFact==i){
// for current fact, remove hide class and add image for it
jQuery('#fact-img').attr('src', '/img/backgrounds/'+arrImg[i]);
jQuery(arrId[i]).removeClass("hide");// remove the current facet id
} else {
jQuery(arrId[i]).addClass("hide");
}
}
counter++;
},5000); // for five seconds delay
另外,尝试使用短代码来执行相同操作,
jQuery(".facts-button2").click(function(){
jQuery('#fact-img').attr('src', '/img/backgrounds/fact2-img.png');
jQuery("#fact2").removeClass("hide");
jQuery("#fact-standaard,#fact1,#fact3,#fact4,#fact5,#fact6").addClass("hide");
});