function myfunction()
{
window.setTimeout(alert('I waited for you.'),700000000);
}
我打电è¯ç»™è¿™æ ·çš„功能,我立å³å¾—到è¦å‘Šè¯´â€œæˆ‘ç‰ä½ 了â€ã€‚
我最åˆæŠŠ7000作为第二个å‚数,但是如果它是除了秒之外的东西,它还是继ç»æŽ¨åŠ¨å®ƒã€‚我显然希望函数能够åšå…¶ä»–事情,但我把它分解为这个简å•çš„例åæ¥å‘我自己è¯æ˜Žé—®é¢˜æ‰€åœ¨ã€‚
我的错误是什么?
ç”案 0 :(得分:3)
ä½ å¿…é¡»ä¼ é€’ä¸€ä¸ªå‡½æ•°å¼•ç”¨ï¼Œè€Œä¸æ˜¯åƒè¿™æ ·æ‰§è¡Œalert()
的结果:
function myfunction() {
window.setTimeout(function() {alert('I waited for you.')},700000000);
}
当您将alert('I waited for you.')
ä¼ é€’ç»™setTimeout()
时,您告诉javascript解释程åºæ‰§è¡Œalert('I waited for you.')
,然åŽå°†è¿”å›žç»“æžœä¼ é€’ç»™setTimeout()
。由于这会立å³æ‰§è¡Œalert()
è¯å¥å¹¶ä¸”è¦æŠ¥ä¸ä¼šè¿”回setTimeout()
使用的函数,这显然ä¸æ˜¯æ‚¨æƒ³è¦çš„。
相åï¼Œæ‚¨å¸Œæœ›å°†å‡½æ•°å¼•ç”¨ä¼ é€’ç»™setTimeout()
。这å¯ä»¥ä½¿ç”¨åŒ¿å函数完æˆï¼Œå¦‚上é¢æ供的示例,也å¯ä»¥ä½¿ç”¨å•ç‹¬çš„命å函数完æˆï¼Œå¦‚下所示:
function myAlert() {
alert('I waited for you.');
}
function myfunction() {
window.setTimeout(myAlert, 700000000);
}
注æ„:对于更高级的用法,åªè¦è¯¥å‡½æ•°è¿”回setTimeout()
ç¨åŽå¯ä»¥è°ƒç”¨çš„函数引用,您实际上å¯ä»¥å°†ç«‹å³æ‰§è¡Œçš„å‡½æ•°ä¼ é€’ç»™setTimeout()
。但是,这显然ä¸æ˜¯æ‚¨åœ¨alert()
ç”案 1 :(得分:2)
试试这个
function myfunction() {
window.setTimeout( function(){alert('I waited for you.');}, 700000000);
}
在您的代ç ä¸ï¼Œç«‹å³è°ƒç”¨å‡½æ•°è¦æŠ¥ã€‚å¦‚æžœä½ æƒ³ç¨åŽæ‰§è¡Œï¼Œä½ åº”è¯¥ä¼ é€’å¯¹å‡½æ•°çš„å¼•ç”¨è€Œä¸æ˜¯å‡½æ•°è°ƒç”¨setTimeout
。
ç”案 2 :(得分:2)
ä½ åº”è¯¥åš
function makeAlert(){
alert('I waited for you.')
}
window.setTimeout(makeAlert,700000000);
å¦åˆ™ç«‹å³æ‰§è¡Œalert()
ç”案 3 :(得分:2)
将其包装在匿å函数ä¸ï¼š
function myfunction(){
window.setTimeout(function(){alert('I waited for you.')},700000000);
}
这是一个 example jsFiddle (更容易管ç†çš„3秒延迟)。
ç”案 4 :(得分:-1)
您å¯ä»¥ç®€å•åœ°å°†alert('I waited for you.')
包裹在引å·"
ä¸ï¼š
function myfunction()
{
window.setTimeout("alert('I waited for you.')",7000);
}
æ•°å—是ç‰å¾…çš„æ¯«ç§’æ•°ï¼Œå› æ¤7000是7秒。
请å‚阅http://jsfiddle.net/Ac5Xf/
ç”案 5 :(得分:-2)
我å‘现如果我在第一个å‚æ•°å‘¨å›´åŠ ä¸Šå¼•å·ï¼Œå®ƒå°±å¯ä»¥äº†ã€‚这就是我实际åšçš„事情:
function divhide()
{
window.setTimeout("realhide()",7000);
}
function realhide(){
var mydiv = document.getElementById("mydiv");
mydiv.style.display="none";
mydiv.innerHTML="";
}