亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

JS DOM createElements 和appendChild 不起作用

JS DOM createElements 和appendChild 不起作用

絕地無雙 2023-10-16 10:23:40
我正在嘗試創建一個包含一些學生信息的網站。因此,我需要創建動態配置文件卡并將它們附加到正文中。但 DOM 總是讓我著迷。function student(src, name) {    this.src = src;    this.name = name;}var student1 = student(1, "ABC");var card = document.createElement('div');card.className = 'card';var image = document.createElement('img');image.src = 'images\/students\/' + student1.src + '.jpg';card.appendChild(image);var stuName = document.createElement('p');stuName.className = 'name';var stuNameText = document.createTextNode(student1.name);stuName.appendChild(stuNameText);card.appendChild(stuName);然而屏幕上什么也沒有顯示。place這里是body的id。任何幫助將不勝感激。編輯:顯然應用所有必要的更改并將我的腳本標記移動到正文會有所幫助。
查看完整描述

3 回答

?
翻翻過去那場雪

TA貢獻2065條經驗 獲得超14個贊

您創建 Student1 對象的方式是錯誤的, var student1 = new  student(1, "ABC"); 您忘記了新的關鍵工作


function student(src, name) {

    this.src = src;

    this.name = name;

}


var student1 = new  student(1, "ABC");


var card = document.createElement('div');

card.className = 'card';


var image = document.createElement('img');

image.src = 'images\/students\/' + student1.src + '.jpg';

card.appendChild(image);


var stuName = document.createElement('p');

stuName.className = 'name';

var stuNameText = document.createTextNode(student1.name);

stuName.appendChild(stuNameText);

card.appendChild(stuName);

var main=document.getElementById('main')

main.appendChild(card)

.card{    color: palevioletred;

    background: yellow;}

<div id="main"></div>


查看完整回答
反對 回復 2023-10-16
?
紅糖糍粑

TA貢獻1815條經驗 獲得超6個贊

您沒有將代碼附加到任何 DOM 元素,也沒有在 body 中創建新的 div 并將代碼附加到該 div 中。 <div id="stdCard"></div> 然后你可以使用innerHTML將卡片附加到創建的父div中。document.getElementById("stdCard").innerHTML = card;



查看完整回答
反對 回復 2023-10-16
?
MYYA

TA貢獻1868條經驗 獲得超4個贊

您必須將所有這些新創建的元素附加到 DOM 中已有的 div 中,否則 body 標記也可以工作。目前,您創建的元素未附加到 DOM。假設你有一個 div

<div id="mydiv"></div>

您可以將新創建的元素附加到該 div 上,如下所示:

ley mydiv = document.getElementById('mydiv');
mydiv.appendChild(card);

或者你可以將它附加到正文本身,如下所示:

ley body= document.getElementByTagName('body');
body.appendChild(card);


查看完整回答
反對 回復 2023-10-16
  • 3 回答
  • 0 關注
  • 136 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號