8.7w+
社区成员
<script type="text/javascript">
var num=19;
function startCount() {
document.getElementById('count').innerHTML=num;
num=num-1;
var timer=setTimeout("startCount()",1000);
if(num<=0)
{
clearTimeout(timer);
$(".radios").trigger("change");
}
} </script>
<div class="web_boxx">
<div class="web_logo"><img src="__PUBLIC__/pc/images/dati_t.png" /></div>
<h3>{$vo.title}</h3>
</div>
<div class="div20px"></div>
<div class="web_tt">
<div class="web_line">
<input type="radio" name="optionsRadios" id="optionsRadios1" class="radios" value="a"><label for="optionsRadios1"> A.{$vo.question_a}</label>
<div class="web_clear"></div>
</div>
<div class="web_line">
<input type="radio" name="optionsRadios" id="optionsRadios2" class="radios" value="b"><label for="optionsRadios2">B.{$vo.question_b}</label>
<div class="web_clear"></div>
</div>
<div class="web_line">
<input type="radio" name="optionsRadios" id="optionsRadios3" class="radios" value="c"><label for="optionsRadios3">C.{$vo.question_c}</label>
<div class="web_clear"></div>
</div>
<if condition="$vo['question_d'] neq ''">
<div class="web_line">
<input type="radio" name="optionsRadios" id="optionsRadios4" class="radios" value="d"><label for="optionsRadios4">D.{$vo.question_d}</label>
<div class="web_clear"></div>
</div>
</if>
</div>
<script>
$(document).ready(function(){
setTimeout("startCount()",1000);
$('.radios').on('change', function(){
var position = $('#position').val();
var answer = $('input[name="optionsRadios"]:checked').val();
var eid = $('#eid').val();
var iid = $('#iid').val();
var openid = $('#openid').val();
$.ajax({
url:"{:U('Index/judge')}",
data:{'answer':answer,'eid':eid},
dataType:"json",
type:"post",
success:function(returnData){
if(returnData.status==1){
layer.msg(returnData.msg, {icon: 1});
}else{
layer.msg(returnData.msg, {icon: 2});
}
if(position<20){
$.ajax({
url:"{:U('Index/show')}",
data:{'position': position++,'eid':eid,'answer':answer,'iid':iid,'openid':openid},
dataType:"json",
type:"post",
success:function(retData){
$('#exm').empty();
$('#exm').html(retData);
}
});
}
});
});
</script>
<script type="text/javascript">
$(document).ready(function(){
var position = {$number} ;
var openid = '{$openid}';
var iid = {$log_id};
$.ajax({
url:"{:U('Index/show')}",
data:{'position': position++,'openid':openid,'iid':iid},
dataType:"json",
type:"post",
success:function(retData){
$('#exm').empty();
$('#exm').html(retData);
}
});
});
</script>
</head>
<body>
<div class="row" id="exm">
</div></body></html>
var timer;
var num=20;
var iOn = false; // 是否已经有定时器在运行
function startCount() {
if(iOn){ // 判断是否有定时器在运行,有则不在重新启动定时器,没有则新启动一个定时器
return ;
}
num=20;
changeCount(); // 为了不受iOn影响,新增一个函数
}
function changeCount(){
num=num-1;
document.getElementById('count').innerHTML=num;
timer=setTimeout("changeCount()",1000);
iOn = true; // 表示已经有一个定时器在运行
if(num<=0)
{
iOn = false; // 运行结束,关闭定时器,表示没有定时器在运行,可以重新启动定时器
clearTimeout(timer);
$(".radios").trigger("change");
}
}
3、这种需求用setInterval函数更好,楼主可以写个试试