簡體   English   中英

無法弄清楚在何處加載JavaScript文件

[英]Cannot figure out where to load javascript file

HTML

<!DOCTYPE html>
<html lang="en">

<head>

    <meta charset="utf-8">
    <title>Game</title>
    <link rel="stylesheet" type="text/css" href="stylesheet.css">
    <script src="script.js"></script>   

</head>

<body>

    <div class="container">

    <table class="table ">
        <tr>
            <td id="1">a</td>           
            <td id="2">a</td>           
            <td id="3">a</td>           
            <td id="4">a</td>
        </tr>
        <tr>
            <td id="5">a</td>           
            <td id="6">a</td>           
            <td id="7">a</td>           
            <td id="8">a</td>
        </tr>
        <tr>
            <td id="9">a</td>           
            <td id="10">a</td>          
            <td id="11">a</td>          
            <td id="12">a</td>
        </tr>
        <tr>
            <td id="13">a</td>          
            <td id="14">a</td>          
            <td id="15">a</td>          
            <td id="16">a</td>
        </tr>
    </table>

    </div>


</body>

function startFunction() {
    var table = document.querySelector('#table');
    var table_cells = table.querySelectorAll('td');   
}


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

我不斷收到“未捕獲的typeError錯誤:無法讀取null的屬性'querySelectorAll'”的錯誤。

我認為這與以下事實有關:當我調用一個試圖在該元素節點存在之前嘗試抓住該元素節點的函數時,該事實與事實有關?

我將Javascript文件加載到HTML文件的<head>部分中,因此添加了window.onload函數以確保在頁面運行之前已加載所有內容。 但是,我仍然不斷收到此錯誤。

看看JavaScript中的這一行:

var table = document.querySelector('#table');

井號表示ID ,因此您的JavaScript正在尋找ID為“表格”的元素。

但是,如果您查看自己的桌子,它沒有ID。 只有班級

解決方案是給您的<table>一個ID為“ table”,以便javascript正確找到它:

<table id="table">

該表缺少id屬性。 相反,它具有類屬性。 通過添加id修復

<table class="table" id="table">

或修改查詢選擇器以按類進行選擇:

var table = document.querySelector('.table');

暫無
暫無

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

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