You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为JavaScript元素添加FontAwesome图标?Todo应用删除按钮改造咨询

解决方案

首先要确保你的页面已经引入了FontAwesome的样式文件(本地引入或官方提供的方式均可),之后需要修改两处创建删除按钮的代码,替换原来的叉号文本为FontAwesome垃圾桶图标:

1. 修改现有任务项的删除按钮初始化代码

找到脚本中初始化现有<li>元素的循环部分,把创建叉号文本节点的代码替换为创建FontAwesome的<i>元素:

原代码:

var txt = document.createTextNode('\u00D7');
span.appendChild(txt);

替换为:

var icon = document.createElement('i');
icon.className = 'fa fa-trash';
icon.setAttribute('aria-hidden', 'true');
span.appendChild(icon);

2. 修改新增任务时的删除按钮创建代码

在newElement()函数里,同样替换创建叉号文本的代码:

原代码:

var txt = document.createTextNode('\u00D7');
span.appendChild(txt);

替换为:

var icon = document.createElement('i');
icon.className = 'fa fa-trash';
icon.setAttribute('aria-hidden', 'true');
span.appendChild(icon);

修改后的完整脚本参考

var myNodelist = document.getElementsByTagName('LI');
var i;
for (i = 0; i < myNodelist.length; i++) {
  var span = document.createElement('SPAN');
  // 替换为垃圾桶图标
  var icon = document.createElement('i');
  icon.className = 'fa fa-trash';
  icon.setAttribute('aria-hidden', 'true');
  span.className = 'close';
  span.appendChild(icon);
  myNodelist[i].appendChild(span);
}

var close = document.getElementsByClassName('close');
var i;
for (i = 0; i < close.length; i++) {
  close[i].onclick = function () {
    var div = this.parentElement;
    div.style.display = 'none';
  };
}

function newElement() {
  var li = document.createElement('li');
  var inputValue = document.getElementById('myInput').value;
  var t = document.createTextNode(inputValue);
  li.appendChild(t);
  if (inputValue === '') {
    alert('You must write something!');
  } else {
    document.getElementById('newtask').appendChild(li);
  }
  document.getElementById('myInput').value = '';

  var span = document.createElement('SPAN');
  // 替换为垃圾桶图标
  var icon = document.createElement('i');
  icon.className = 'fa fa-trash';
  icon.setAttribute('aria-hidden', 'true');
  span.className = 'close';
  span.appendChild(icon);
  li.appendChild(span);

  for (i = 0; i < close.length; i++) {
    close[i].onclick = function () {
      var div = this.parentElement;
      div.style.display = 'none';
    };
  }
}

这样修改后,所有任务项的删除按钮就会显示FontAwesome的垃圾桶图标,原来的叉号会被替换掉。

内容的提问来源于stack exchange,提问作者AnanReis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 20:05:16