簡體   English   中英

document.getElementById返回null

[英]document.getElementById is returning null

這是相關的HTML:

<div id="navcontainer">
    <ul id="navlist">
        <li><a href="#tab1">Item one</a></li>
        <li><a href="#tab2">Item two</a></li>
        <li><a href="#tab3">Item three</a></li>
        <li><a href="#tab4">Item four</a></li>
        <li><a href="#tab5">Item five</a></li>
    </ul>
</div>

vertical.js的內容

function tabber() {
    var li = document.getElementById("navcontainer");
    var as = document.getElementById('navlist');

    return;
}

window.onload = tabber();

執行tabber()函數時,對document.getElementById的函數調用返回null。 為什么? 元素navcontainer肯定存在。 有線索嗎?

嘿,魔鬼在細節。 在分配onload事件時你犯了一個錯誤。

window.onload = tabber();

tabber()結果分配給onload屬性。 Tabber()是直接執行而不是onload

將其更改為

window.onload = function() { tabber(); }

那可行。

你在窗口加載時錯誤地調用tabber函數。

將其更改為

window.onload = tabber;

也許你將JS關鍵字'as'用作變量這一事實就是問題所在。 首先刪除它。

暫無
暫無

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

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