2 回答

TA貢獻1757條經驗 獲得超8個贊
使用querySelector查找DOM元素并將appenChild更改為appendChild,如下所示
let icons = ["fab fa-html5", "fab fa-css3"];
let ir = document.querySelector('#stacks-icons');
let i = document.createElement('li');
i.className = icons[1];
ir.appendChild(i);

TA貢獻1810條經驗 獲得超4個贊
使用appendChild
而不是appenChild
.?另外,用于document.querySelector
選擇 dom 元素。
如果您使用 jQuery,則使用append()
not ,appendChild()
因為您是通過 jQuery 方法獲取元素,所以您也應該使用 jQuery 方法進行追加。
示例片段如下 -
class Iconlist{
? constructor(){
? ? this.icons = ["fab fa-html5", "fab fa-css3"];
? ? this.iconsRow = $('#stacks-icons');
? }
??
? create(){
? ? let i = document.createElement('li');
? ? i.textContent = "Some text";
? ? i.className = this.icons[1];
? ? this.iconsRow.append(i);
? ? console.log(i);
? }
}
let mi = new Iconlist();
mi.create();
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<ul id="stacks-icons">
? <li>ABC</li>
</ul>

TA貢獻1797條經驗 獲得超6個贊
appendChild如果您使用 選擇該元素,則不會調用任何方法jQuery。Jquery 有append一個方法,您可以通過它在ul. 我在這里添加了兩種方法(jquery 和 javascript),您可以通過它們實現您的目標。這是工作示例:
var icons = ["fab fa-html5", "fab fa-css3"];
// 1st way using javascript
var ul = document.getElementById("stacks-icons");
let i = document.createElement('li');
i.className = icons[0];
i.appendChild(document.createTextNode("1st using javascript"));
ul.appendChild(i);
// 2nd way using jquery
var iconsRow = $('#stacks-icons');
let i1 = document.createElement('li');
i1.className = icons[1];
i1.appendChild(document.createTextNode("2nd using jquery"));
iconsRow.append(i1);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<ul id="stacks-icons">
<li>Default</li>
</ul>
添加回答
舉報