最新国产好看的视频,伊人天堂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ù)據(jù)綁定
	// data:數(shù)據(jù)(數(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在獲取或者別的方面出了錯。

根據(jù)預解析的概念:就是代碼在真正執(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ù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論

综艺| 梨树县| 隆德县| 萨迦县| 海林市| 旺苍县| 巴南区| 迁西县| 娱乐| 辽阳市| 许昌市| 灵宝市| 吉安市| 雅江县| 卫辉市| 济宁市| 甘泉县| 什邡市| 青浦区| 东乌| 葫芦岛市| 依兰县| 阿拉善右旗| 亚东县| 资兴市| 大丰市| 田阳县| 虹口区| 永福县| 西城区| 扶风县| 浮山县| 惠安县| 锡林浩特市| 怀仁县| 沙湾县| 平原县| 玉门市| 华安县| 竹山县| 塘沽区|