2012-07-29 200 views
1

我遇到了一個問題,爲了讓我的JavaScript函數能夠運行,我必須點擊兩次。onclick:必須點擊兩次才能讓div隱藏/顯示

HTML爲按鈕:

<input type="button" id="logintrigger" value="Log In" onClick="hideshow();"/> 

的JavaScript:

function hideshow() { 
    var toggle = document.getElementById('logincontainer'); 
    toggle.style.display = toggle.style.display == "none" ? "block" : "none"; 
} 

我一直在尋找周圍並沒有發現任何幫助。

謝謝。

回答

2

display屬性的初始狀態更可能爲空。這就是爲什麼直到你明確地改變它 - 這個js函數得到「」。

2

應用風格= 「顯示:塊」明確地logincontainer,然後改變下列行: toggle.style.display = toggle.style.display == 「塊」? 「none」:「block」;

+0

嘿,謝謝你的快速回答。我在想,如果你知道我點擊頁面時怎樣才能隱藏它?我嘗試過:document.onclick = function(){ var toggle = document.getElementById('logincontainer'); toggle.style.display ==「none」; } – user1512677 2012-07-29 20:07:00

+0

@ user1512677:所以你想要的是當你在logincontainer之外單擊時,它應該隱藏,是嗎? – 2012-07-29 20:13:49

+0

@ user1512677:是的,我知道了......在** logincontainer **標籤裏面,調用這個函數** onmouseover **。我的意思是如果你有一個文本框的id爲logincontainer(假設),那麼 2012-07-29 20:21:44

相關問題