最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

js控制臺報錯Uncaught TypeError: Cannot read properties of undefined (reading ‘appendChild‘)的解決

 更新時間:2023年07月14日 10:07:03   作者:三月.'  
本文主要介紹了js控制臺報錯Uncaught TypeError: Cannot read properties of undefined (reading ‘appendChild‘)的解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

控制臺錯誤提示為:

意思是:未捕獲的類型錯誤: 無法讀取未定義的屬性(讀取‘ appendchild’)

也就是說,你在使用appendChild時的父元素上沒有這個屬性,所以沒法使用。

此時,需要檢查你獲取元素是否有誤,或者是邏輯問題。

此時我的js代碼為:(只展示引起錯誤的部分)

// 頁面初始化
	bindData(classList);
	// 獲取元素
	var kecheng = document.querySelector(".classlist .kecheng");
    // 數(shù)據綁定
	// data:數(shù)據(數(shù)組)
	function bindData(data) {
		// 循環(huán)遍歷數(shù)組
		data.forEach(function(val, index) {
			// console.log(val,index);
			// 創(chuàng)建章
			var div = document.createElement("div");
			// 設置類名
			div.className = "detail";
			// 賦值內容
			div.innerHTML =
				`<p class="title">${val.title}(含${val.num}期)<i class="iconfont iconupanddown ${index < 3 ?'icon-top1':'icon-down'}"></i></p>`;
			// 創(chuàng)建ul
			var ul = document.createElement("ul");
			// 設置類名
			ul.className = index < 3 ? "active" : "";
			// 創(chuàng)建節(jié)
			// console.log(val.list);
			val.list.forEach(function(cur) {
				// 創(chuàng)建li
				var li = document.createElement("li");
				// 給當前這個li賦值內容
				li.innerHTML = `<p>
									<i class="iconfont icon-bofang"></i>
									<span>${cur.name}</span>
								</p>
								<p>
									<span>${cur.time}開播</span>
									<span class="start">播放視頻</span>
								</p>`;
				// 添加到ul中 
				ul.appendChild(li);
			});
			// 將ul添加到div中
			div.appendChild(ul);
			// 將div添加到kecheng中
			kecheng.appendChild(div);
		});

 從上圖可以看出,我把獲取元素寫到了調用方法的后面,且報錯時提示的行數(shù)對應的內容是:kecheng.appendChild(div);也就是說是kecheng在獲取或者別的方面出了錯。

根據預解析的概念:就是代碼在真正執(zhí)行之前將var和funtion進行提前的加載。(var只聲明不定義,function聲明+定義 )

得知:在代碼執(zhí)行前的預加載中是先把函數(shù)bindData(classList)調用,之后才定義了課程,所以在函數(shù)bindData中最后一行的kecheng還未定義。(預加載思路圖大致如下)

 所以,只要把函數(shù)調用放在獲取元素之后就可以避免這類型錯誤。如下:

    // 獲取元素
	var kecheng = document.querySelector(".classlist .kecheng");
	// 頁面初始化
	bindData(classList);

到此這篇關于js控制臺報錯Uncaught TypeError: Cannot read properties of undefined (reading ‘appendChild‘)的解決的文章就介紹到這了,更多相關js控制臺報錯Uncaught TypeError內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論

航空| 钦州市| 社会| 邯郸县| 商水县| 微山县| 奇台县| 怀化市| 左权县| 遂昌县| 库尔勒市| 巴马| 睢宁县| 漳州市| 岢岚县| 改则县| 梨树县| 大庆市| 织金县| 新源县| 九江市| 如皋市| 宁津县| 陆丰市| 富阳市| 沐川县| 论坛| 建始县| 辽阳市| 永福县| 丰县| 晴隆县| 乌恰县| 宜章县| 河池市| 西安市| 察隅县| 贵港市| 麻城市| 磐石市| 图木舒克市|