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

使用innerHTML修改div内容时FontAwesome图标无法生效问题求解

问题原因

你的代码运行异常是由字符串引号嵌套冲突导致的:你给innerHTML赋值时外层用了双引号包裹整段HTML字符串,内部i标签的class、aria-hidden属性同样使用了双引号,JS会误将内部的双引号识别为外层字符串的结束标识,无法正确解析FontAwesome的图标标签内容。

修复方案

你可以任选以下两种方案修改代码:

  • 方案1:将外层字符串的包裹引号改为单引号,无需修改内部标签的引号写法
  • 方案2:保留外层双引号,给内部所有属性的双引号前添加转义符\
修正后的完整代码
function chPlay2() {
    // 注意确保audio变量在当前作用域下可正常访问
    if (document.getElementById("player").title == "Toggle Play") {
        audio.play();
        document.getElementById("player").title = "Toggle Stop";
        document.getElementById("player").innerHTML = '&nbsp;<i class="fa fa-stop" aria-hidden="true"></i>';
    } else {
        audio.pause();
        document.getElementById("player").title = "Toggle Play";
        document.getElementById("player").innerHTML = '&nbsp;<i class="fa fa-play" aria-hidden="true"></i>';
    }
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 02:36:04