2017-09-01 93 views
-3

林看着這段代碼從W3學校JS代碼:評論

<script> 
/* When the user clicks on the button, 
toggle between hiding and showing the dropdown content */ 
function myFunction() { 
document.getElementById("myDropdown").classList.toggle("show"); 
} 

// Close the dropdown if the user clicks outside of it 
window.onclick = function(event) { 
if (!event.target.matches('.dropbtn')) { 

var dropdowns = document.getElementsByClassName("dropdown-content"); 
var i; 
for (i = 0; i < dropdowns.length; i++) { 
    var openDropdown = dropdowns[i]; 
    if (openDropdown.classList.contains('show')) { 
    openDropdown.classList.remove('show'); 
    } 
} 
} 
} 
</script> 

我知道它做什麼(打開和關閉下拉導航欄),但我不知道是什麼的代碼來每一行/它是如何做到的。我想知道這裏有沒有人會對每行代碼發表評論/註釋,以便我可以進一步瞭解它並從中學習。

感謝

+0

_...想知道如果有人在這裏會友好... ...所以不是「評論我的代碼網站」....請**訪問**的** [幫助中心](http://stackoverflow.com/tour)**並參觀遊覽,看看有什麼和如何問。 –

+0

@bub不需要粗魯,這顯然是他的第一個問題。只要把他指向幫助中心,並解釋他做錯了什麼。 –

+0

我明白,即時通訊學習網絡語言和即時通訊做得很好。主要通過閱讀代碼和它的評論來學習。 我不明白這段代碼如何工作,我無法找到它,或任何類似的評論任何地方,所以我想ID在這裏發表。 對於一個完全理解它只會一分鐘,並會幫助像我這樣的人! – Charlie

回答

1
function myFunction() { 
document.getElementById("myDropdown").classList.toggle("show"); 
} 

實際上有兩件事情在這裏

document.getElementById("myDropdown") 

這裏的文件指的是整個HTML(DOM)頁面發生。 getElementById是在DOM本地即時拍攝的功能這一段代碼通過用ID myDropdown

classList.toggle("show"); 

班級列表查找HTML元素是含有它當前類的列表元素屬性。這將改變這個元素類來顯示

// Close the dropdown if the user clicks outside of it 
window.onclick = function(event) { 

每當窗口被點擊執行此功能。現在,基於前面的代碼,如果你明白下面的代碼 我會離開它作爲鍛鍊; Tibial(!event.target.matches(「 dropbtn」)){

var dropdowns = document.getElementsByClassName("dropdown-content"); 
var i; 
for (i = 0; i < dropdowns.length; i++) { 
    var openDropdown = dropdowns[i]; 
if (openDropdown.classList.contains('show')) { 
    openDropdown.classList.remove('show'); 
    } 
    } 
} 
} 

我會建議你嘗試了其他只有當您遇到無法解決的問題時,才能學習和使用堆棧溢出。我會推薦這個網站codecamp並嘗試在線搜索。有在線物品的負載。祝你好運與你的學習