簡體   English   中英

javascript HTMLCollection訪問權限

[英]javascript HTMLCollection access

我創建了一個網站,需要推動javascript。 我想從我的HTML菜單中獲取子節點。

這是我的HTML結構的一部分:

    <ul class="menu">
       <div class="moduletable_menu">
          <ul class="nav menu nav-pills">
             <li class="item-101">
             <li class="item-108 current active deeper parent">
             <li class="item-127">
             <li class="item-113 deeper parent">
             <li class="item-124">
             <li class="item-116 deeper parent">
          </ul>
       </div>
    </ul>

所以,我想獲得“活躍”元素。 我做了以下代碼:

    function getmenuItem(){
   var SelectedItem = document.getElementsByClassName("active");
   console.log(SelectedItem);
   console.log(SelectedItem.length);
    } 

問題出現了:

我通過Firebug顯示了控制台,它顯示了我

HTMLCollection[]
0

然后我嘗試使用SelectedElement[0]訪問Collection,但我得到了“undefined”。

請告訴我如何獲得活躍元素的孩子。

只有在構建HTML頁面后才能找到該元素。 如果您的代碼段在文檔<head>中的<script>中是獨立的,則尚未有"active"類的元素。

將代碼放在windows.onload ,該頁面在加載頁面並創建其元素后調用:

window.onload = function() {
    var SelectedItem = document.getElementsByClassName("active");

    console.log(SelectedItem);
    console.log(SelectedItem.length);
} 

然后您的集合的長度應為1,您可以使用[0]訪問第一個元素。 onclick類的事件處理程序中喚起代碼也會起作用,只有當文檔已經存在時才會觸發。 (因為否則不會有任何按鈕點擊。)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM