私はjavascript/jqueryの新機能であり、まだ理解していません。私は、コード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');
}
}
}
}
へのほとんどすべてを理解して意味のある部分を理解して見えることはできません、しかし、私はjqueryのを使用して、ドロップダウンメニューを習得しようとしていると私はこのw3schoolチュートリアルを見つけました
私はforループがどのように動作するのか知っていますが、htmlファイルからdivsになると、どのように動作するのか分かりません。i
たとえば、var dropdowns
には、dropdown-content
というクラスのdivがあります。次に、このvarは、長さのプロパティを持つforループで使用されますが、私はそのvar ..の長さは何か分からない1ですか?そして、var openDropdown = dropdowns[i]
の行はこれですか? var i
は0
ですが、varのドロップダウンからはどのようなものがありますか?
したがって、forループでは、dropdowns.lengthは何ですか? 1?ドロップダウン[i]は何を返しますか?それは 'dropdown-content' divですか?さらになぜforループがここで使われているのですが、IF関数だけではないのですか? –
はい、 'dropdown.length'は、文' document.getElementsByClassName( "dropdown-content"); '(これは値1と、あなたが推測したように 'dropdown-content' divを持ちます)とループの理由は、例のような複数のドロップダウンメニューを持つ可能性があるため、一般的な例と 'if'を使用した単一要素テストのyesが十分である可能性があります。 – RohitS