我有两个脚本在我的页面正文中运行。当在键盘上按下“a”时,将运行另一个脚本。我如何添加一些延迟,然后再次触发第一个脚本?我已经尝试了下面的代码,它不起作用。最好,我想取消第二个脚本开头的第一个超时。从脚本中的另一个脚本执行功能
<script id="source" language="javascript" type="text/javascript">
$(function(){
function reloading(){
$.ajax({
url: 'api.php',
data: "",
dataType: 'json',
success: function(data)
{
var id = data[0];
_id = id;
var vname = data[1];
var message = data[2];
var timestamp = data[3];
var field1 = data[4];
_field1 = field1;
var val2 = parseInt(field1, 10) ;
_val2 = val2;
$('#output').hide().html(message).fadeIn("slow");
$('#username').hide().html(vname +":").fadeIn("slow");
setTimeout(function(){
reloading();
}, 60000);
}
});
}
reloading();
});
</script>
<script>
$(document).jkey('a',function() {
$.post("update.php", { "id": _id})
$('#output').hide().html("<i>Message</i><br> <br>" +_val2 +" additional.").fadeIn("slow");
$('#username').fadeOut("fast");
$('#valg1').fadeOut("fast");
$('#valg2').fadeOut("fast");
});
setTimeout("reloading()",1000);
</script>
你的函数不是匿名的页面加载外部可见。将它移到匿名函数之外或创建您自己的范围 – mplungjan
此外,您的“a”代码不包含该呼叫 - 它在功能之外 – mplungjan
啊,是一个很大的错误。如果我给它一个名字并且使用setTimeout调用它,是不是应该可以运行整个第一个函数? $(function'content(){ function reloading(){ $ .ajax({'然后'setTimeout(“content()”,3000);'? – user977101