1
我很新的JavaScript/jQuery,並不完全理解它呢。我想學習使用jQuery下拉菜單,我發現這個w3school教程,不過,我似乎無法理解的代碼http://www.w3schools.com/howto/tryit.asp?filename=tryhow_css_js_dropdownjquery下拉菜單的解釋
我的意思我明白了幾乎所有到這個
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');
}
}
}
}
的某些部分
我知道什麼是for循環,它是如何工作的,但我不明白i
如何處理HTML文件中的div。例如var dropdowns
有一個dropdown-content
類的div。然後,這個變量用於具有length屬性的for循環中,但我不明白這個變量的長度是多少。它是1嗎?然後用var openDropdown = dropdowns[i]
這行呢? var i
是0
但是它是從var下拉菜單中獲取的?
所以在for循環中,dropdowns.length是什麼? 1?下拉[i]返回什麼?它是'dropdown-content'div嗎?此外爲什麼在這裏使用循環,爲什麼不只是IF函數? –
yes,'dropdown.length'通過語句'document.getElementsByClassName(「dropdown-content」)檢索到的對象數組的返回長度;'(這裏是的,它的值爲1,其'下拉內容'div爲你猜對)和循環的原因可能是你可能有多個下拉菜單,而不僅僅是一個例子,所以這是一個廣義的例子,是單個元素測試'是'就足夠了。 – RohitS