【发布时间】:2011-08-07 15:38:02
【问题描述】:
我有一个问题。我有一个脚本,它首先检查是否加载了 iframe 的内容。
- 加载内容后,会出现倒计时。
- 一旦计时器达到 0,就会运行一个表单。
我的问题是,当加载 iframe 时,当倒计时开始时,我可以点击 iframe 中的另一个链接,它会再次启动计时器。
我的脚本是:
<script type="text/javascript">
//Loading bar style
$(document).ready(function() {
$("#progressbar").progressbar({ value: 0 });
});
// on document load:
$(function() {
// set "waiting" message:
$("#loadingStatus").html("Waiting for your advertisements to load...");
// on iframe load:
$('#iFrame').load(function() {
$("#loadingStatus").html($("#isDone").html());
});
});
$(function count() {
var seconds = <?php echo $exposure[$r['exposure']]; ?>;
setTimeout(updateCountdown, 1000);
function updateCountdown() {
seconds--;
if (seconds > 0) {
$("#countdown").text("You must view this advertisement for " + seconds + " seconds.");
//$('#progressbar').progressbar({ value: Math.round((seconds/10)*100) });
setTimeout(updateCountdown, 1000);
} else {
submitForm();
}
}
});
function submitForm() {
$("#countdown").empty().html('<img src="..ify/dream/images/loading.gif" />');
$.post(
'index.php?i=v&p=k&key=DSF79SADFHSA7D9FGSAD097FSAD7F9779ASDFGS9',
$('form').serialize(),
function (data) {
proccessData(data);
}
);
}
function proccessData (data) {
$('#statusF').hide().html('');
if(data=='success'){
$('form').fadeOut();
$('#countdown').addClass('noti-success').html('Advertisement validated!').slideDown();
redirect("?i=l");
}
else {
$('#countdown').addClass('noti-error').html(data).fadeIn();
}
}
</script>
【问题讨论】:
-
请将您的代码设为jsfiddle
-
查找 '.stop(true)' 和 'queue:' 属性
-
但是在哪里添加这个停止命令呢?
标签: javascript jquery forms load loading