2016-06-11 164 views
1

我想顯示div1 3秒,然後隱藏並顯示div2。請注意我不是一位專業的JavaScript開發人員。但是,我已經通過Google搜索並複製粘貼&來顯示和隱藏div1。顯示Div1爲x秒,然後隱藏並顯示隱藏Div2

當div1隱藏時,我無法顯示div2。下面是代碼....

<div id="Div2" style="display:none"> 
php code here 
</div> 

<div id="Div1" style="display:none"><img id="myImage" src="ajax-loader.gif"></div><br> 
<script type = "text/javascript"> 
function show() { 
    document.getElementById("myDiv").style.display="block"; 
    setTimeout("hide()", 3000); // 3 seconds 
} 

function hide() { 
    document.getElementById("myDiv").style.display="none"; 
} 

show(); 
function show2() { 
    document.getElementById("myDiv1").style.display="block"; 
} 
</script> 
+0

你想在jQuery的或純JavaScript的答案嗎? – Luke101

+1

這裏沒有jQuery代碼,它都是純Javascript。我想不知道這個區別是不是專家的一部分。 – Barmar

+0

@Barmar謝謝。這樣一個愚蠢的錯誤從我身邊。 –

回答

2

你需要調用show2()隱藏Div1後。另外,你的函數中有錯誤的ID。

function show() { 
 
    document.getElementById("Div1").style.display="block"; 
 
    setTimeout("hide()", 3000); // 3 seconds 
 
} 
 

 
function hide() { 
 
    document.getElementById("Div1").style.display="none"; 
 
    show2(); 
 
} 
 

 
show(); 
 
function show2() { 
 
    document.getElementById("Div2").style.display="block"; 
 
}
<div id="Div2" style="display:none"> 
 
php code here 
 
</div> 
 

 
<div id="Div1" style="display:none"><img id="myImage" src="ajax-loader.gif"></div><br>

+0

嘗試過,不工作。我需要顯示div1 3秒(3秒後消失),然後顯示div2(div2保持隱藏3秒)。你的解決方案使div1消失,div2出現。 –

+0

您的功能中沒有正確的ID。 – Barmar

-1

你給一個字符串的setTimeout

setTimeout("hide()", 3000); // 3 seconds 

,但它需要一個功能:

setTimeout(hide, 3000); // 3 seconds 
+0

我不明白。 –

+0

如果你給它一個字符串,它使用'eval()'來執行它。 – Barmar

+0

你是對的。那麼我剛剛學到了一些東西:) – soundyogi