JavaScript 中访问和操作 innerHTML 中的 HTML 元素

javascript 中访问和操作 innerhtml 中的 html 元素

本文将介绍如何使用 JavaScript 访问和操作通过 `innerHTML` 动态添加到 DOM 中的 HTML 元素。我们将探讨使用 `DOMParser` 的方法,并通过示例代码演示如何修改这些元素的样式。同时,也会讨论使用 `forEach` 循环时获取索引的更简洁方式。

访问和操作 innerHTML 中的元素

在使用 JavaScript 操作 DOM 时,经常会遇到需要动态生成 HTML 内容并将其添加到页面中的情况。innerHTML 属性是一种常用的方法,它可以将字符串解析为 HTML 并插入到指定的元素中。然而,直接使用 innerHTML 添加的元素可能无法立即被 JavaScript 访问到,导致出现类似 “TypeError: Cannot read properties of undefined (reading ‘style’)” 的错误。

以下是一种解决此问题的方法:使用 DOMParser。

使用 DOMParser 解析 HTML 字符串

DOMParser 接口提供了解析 HTML 或 XML 字符串并返回 DOM Document 的能力。通过 DOMParser,我们可以将 HTML 字符串解析成一个 DOM 树,然后像操作普通 DOM 元素一样操作它。

立即学习“Java免费学习笔记(深入)”;

示例代码:

假设我们有以下 HTML 结构需要动态添加到页面中:

以及以下数据:

const ruleData = [    { title: "Rule 1", body: "This is the first rule." },    { title: "Rule 2", body: "This is the second rule." }];const rulesWrapper = document.getElementById('rulesWrapper');let counter = 0;

现在,我们将使用 DOMParser 将 HTML 字符串解析成 DOM 元素,并添加到 rulesWrapper 中:

百度文心百中 百度文心百中

百度大模型语义搜索体验中心

百度文心百中 22 查看详情 百度文心百中

ruleData.forEach((rule) => {    let rule_html = `        

${counter}.

${rule.title}

${rule.body}

`; let parser = new DOMParser(); let doc = parser.parseFromString(rule_html, "text/html"); let ruleElement = doc.body.firstChild; // 获取解析后的元素 ruleElement.querySelector('.rule-body').style.background = 'red'; // 修改样式 rulesWrapper.appendChild(ruleElement); counter++;});

代码解释:

我们首先定义了一个 HTML 字符串 rule_html,它包含了要动态添加的 HTML 结构。然后,我们创建了一个 DOMParser 实例。使用 parseFromString() 方法将 HTML 字符串解析成一个 DOM Document。从 Document 的 body 中获取第一个子元素,即解析后的 HTML 元素。使用 querySelector() 方法选择 rule-body 类名的元素,并修改其 background 样式。最后,使用 appendChild() 方法将解析后的元素添加到 rulesWrapper 中。

使用 forEach 获取索引

在上面的代码中,我们使用了一个 counter 变量来记录循环的索引。实际上,forEach 方法可以直接提供索引值,从而避免手动维护 counter 变量。

示例代码:

ruleData.forEach((rule, index) => {    let rule_html = `        

${index + 1}.

${rule.title}

${rule.body}

`; let parser = new DOMParser(); let doc = parser.parseFromString(rule_html, "text/html"); let ruleElement = doc.body.firstChild; ruleElement.querySelector('.rule-body').style.background = 'red'; rulesWrapper.appendChild(ruleElement);});

代码解释:

forEach 方法的第一个参数是数组的元素,第二个参数是元素的索引。我们可以直接使用 index 变量来代替 counter 变量,并将其传递给 showRuleDetail() 函数。

总结

通过使用 DOMParser,我们可以方便地访问和操作通过 innerHTML 动态添加到 DOM 中的 HTML 元素。同时,使用 forEach 方法的索引参数可以简化循环逻辑,提高代码的可读性。在实际开发中,应根据具体情况选择合适的方法来操作 DOM 元素,以提高代码的效率和可维护性。

注意事项:

DOMParser 的 parseFromString() 方法的第二个参数指定了要解析的字符串的类型。对于 HTML 字符串,应使用 “text/html”。对于 XML 字符串,应使用 “text/xml”。在使用 querySelector() 方法选择元素时,应确保选择器是正确的,并且元素已经添加到 DOM 中。动态添加大量 HTML 元素可能会影响页面的性能。应尽量减少动态添加元素的数量,并考虑使用其他优化方法,例如虚拟 DOM。

以上就是JavaScript 中访问和操作 innerHTML 中的 HTML 元素的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/609528.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月11日 00:27:04
下一篇 2025年11月11日 00:27:59

相关推荐

  • 比特币初始什么价格?比特币第一年什么价格?一文读懂

    比特币最初没有价格,2009年仅为技术实验;2010年5月1万枚换两份披萨,单价约0.0025美元;同年7月Mt. Gox交易所挂牌价约0.05美元,标志市场定价形成。 很多人对数字资产的开山鼻祖抱有好奇,想知道它在最初阶段的价值究竟是多少。实际上,它并非一诞生就拥有价格,其价值的形成经历了一个从无…

    2025年12月11日
    000
  • 比特币涨跌周期是多少?比特币涨跌规律总结

    比特币价格周期围绕四年一次的减半事件展开,经历牛市爆发、熊市回调、盘整积累三阶段,波动趋缓、周期或延长,受宏观影响加剧,需结合历史规律与风险管理进行长期布局。 比特币的价格波动看似难以预测,但其背后存在着较为明显的周期性规律。理解这些周期,特别是与“减半”事件相关的四年周期,是把握市场脉搏、制定长期…

    2025年12月11日
    000
  • okx官网首页登录入口_2025最新okx交易所官方登录地址

    准备好探索数字资产的世界了吗?本指南将为您全程导航,详细介绍欧易(okx)交易所的官方网站入口、app下载安装,以及新用户注册的每一个步骤,旨在帮助您轻松、安全地开启您的交易之旅。 一、访问欧易OKX官方网站 欧易官方网址: 欧易官方app: 1、请通过浏览器,点击上方我们为您提供的欧易OKE官网入…

    2025年12月11日 好文分享
    000
  • 加密货币土狗币怎么获得 土狗币正规获取渠道APP介绍

    “土狗币”通常指社区驱动、热度高但风险极大的新兴数字资产。本文旨在介绍获取此类资产的正规渠道和操作平台,帮助感兴趣的读者了解基本流程,并强调其中存在的巨大风险。 一、通过中心化平台(CEX)获取 1、中心化平台(Centralized Exchange)是类似于传统证券交易所的数字资产交易网站或AP…

    2025年12月11日
    000
  • 币安官网登录 2025最新平台网页版入口

    币安(binance)是全球领先的数字资产交易平台之一,为用户提供广泛的数字货币交易服务、金融衍生品以及资产管理等一站式服务。平台凭借其先进的撮合引擎技术、多重安全防护体系和丰富的交易对,赢得了全球数千万用户的信赖。本文将为您提供2025年最新的币安官方app下载链接与详细的安装使用教程,只需点击本…

    2025年12月11日 好文分享
    000
  • 韩国本土加密货币是什么?韩国本土加密货币有哪些?

    韩国作为全球重要的数字资产市场之一,孕育了许多具有本土特色的加密项目。这些项目通常背靠大型企业,专注于游戏、企业服务和互操作性等实际应用场景,本文将为您介绍几个代表性的韩国本土加密货币。 binance币安交易所 Binance币安注册入口: Binance币安APP下载: 欧易OKX交易所 欧易(…

    2025年12月11日
    000
  • okx官方网站登录入口_一键获取okx交易所安全登录链接

    寻找欧易(okx)交易所的官方渠道?本文汇集了最新的官网入口、app下载链接及详尽的注册教程,旨在帮助您轻松、安全地开启您的数字资产之旅。跟随本指南,所有操作难题将迎刃而解。 欧易OKE官网访问入口 欧易官方网址: 欧易官方app: 1、通过浏览器直接访问上方提供的欧易OKE官方安全链接。2、请务必…

    2025年12月11日 好文分享
    000
  • 什么是大饼?如何利用BTC大饼基础定投避开熊市恐慌?

    理解比特币的去中心化、稀缺性及安全性,建立定投计划并坚持执行,利用市场周期性在熊市中低成本积累资产,定期评估以确保纪律性,从而降低平均成本,实现长期投资目标。 币安官网: 币安官方app: 在加密资产领域,“大饼”是对比特币(BTC)的通俗称呼。理解其基本属性,并结合定投策略,可以帮助投资者在市场下…

    2025年12月11日
    000
  • okx官方网站入口_一键直达okx交易所安全登录平台

    OKX官方网站:安全访问指南 为确保您的资产安全,请遵循以下步骤:1. 点击上方提供的 okx官方授权入口,直接访问官方平台。 OKX官方网站: OKX官方App下载: 2. 访问后,请务必核对浏览器地址栏,确保是官方域名,谨防虚假链接。3. 选择您偏好的注册方式(手机或邮箱),创建一个高强度密码以…

    2025年12月11日 好文分享
    000
  • 哪个网站有狗狗币行情?狗狗币行情走势查看网站前十名推荐

    首选Binance、OKX等十大平台查狗狗币行情,涵盖全面数据与技术分析工具,建议多平台验证并通过官方渠道访问以确保安全。 想实时掌握狗狗币(dogecoin)的行情动态吗?获取准确、及时的价格走势是做出决策的关键一步。本文为您精选了十个顶级的行情查询网站,帮助您轻松获取最新价格、图表和全面的市场数…

    2025年12月11日
    000
  • 狗狗币最高点是多少?21年狗狗币暴跌到多少

    本文回顾了狗狗币(Dogecoin)在2021年经历的剧烈价格波动。我们将详细探讨其创下的历史最高价格,以及随后出现的显著回调,帮助读者理解这一加密资产当年的市场表现。 狗狗币全球主流交易平台 1、币安(Binance):全球交易量领先的平台之一,支持多种加密货币交易对,界面功能全面。 官网入口: …

    2025年12月11日
    000
  • 币安binance交易所APP中文版下载、注册、交易教程 一文详解

    本文提供币安APP使用指南,涵盖下载安装、注册账户、身份认证、交易及提现实操步骤,确保新手安全完成全流程操作。 币安Binance 币安Binance官网入口: 币安BinanceAPP下载链接: 本文旨在为新手用户提供一份详尽的币安交易所APP使用指南,内容涵盖了从下载、注册账户到进行交易和资产提…

    2025年12月11日
    000
  • 比特币三年一周期是多少?一文讲解比特币

    比特币遵循约四年周期,核心驱动力为每四年一次的“减半”机制,即新区块奖励减半,影响供应与市场预期。周期分为四个阶段:积累期(底部布局)、牛市上涨期(价格飙升)、顶部派发期(获利了结)和熊市下跌期(回调探底)。尽管该框架有助于理解长期走势,但未来表现仍受宏观经济、政策和技术等多重因素影响,历史规律不保…

    2025年12月11日
    000
  • 派币值多少钱?一文揭秘派币真实价值

    派币当前无统一市场价,其价值主要由社区共识、IOU投机及生态发展决定。主网封闭期间无法在主流平台交易,仅有小范围易货价值;部分平台的IOU价格反映投机预期,风险较高;长期价值取决于用户基数、生态应用、开放主网进展及代币经济模型。 欧易官网: 欧易官方app: 币安官网: 币安官方app: gate.…

    2025年12月11日
    000
  • 各国比特币储备情况统计 各国比特币储备情况分析2026

    随着数字资产在全球经济中的地位日益重要,部分国家通过不同方式持有的比特币储备已成为外界关注的焦点。本文将梳理当前全球主要国家的比特币持有情况,并对背后的动机及未来趋势进行分析,为读者提供一个清晰的宏观视角。 一、全球主要国家比特币持有情况概览 1、美国:目前,美国政府是全球已知的最大比特币持有者之一…

    2025年12月11日
    000
  • 内地比特币如何交易? 比特币BTC内地安全交易平台一览

    内地用户可通过C2C模式在币安、OKX、火币等平台安全交易比特币,选择时应优先考虑安全性、流动性及用户体验,建议从小额开始并熟悉流程以保障资产安全。 对于内地用户而言,找到安全可靠的比特币(btc)交易渠道是首要任务。本文将为您梳理当前内地用户进行比特币交易的主流方式,并介绍几个声誉良好、安全性较高…

    2025年12月11日
    000
  • BF币:比特国际交易所平台币全攻略

    BF%ignore_a_1%是比特国际平台发行的ERC-20代币,具有通缩机制、权益凭证及多种应用场景。平台定期回购销毁BF币以减少流通量,持有者可享交易手续费折扣、参与投票决策和优先认购新项目等权益。用户可通过登录账户,在币币交易区使用USDT等资产兑换BF币,并在资产页面查看持仓详情与交易记录。…

    2025年12月11日
    000
  • 70万美金比特币多少钱?70万比特币多少钱一个?

    比特币当前价格为88,178.41美元,70万美元可购约7.94个比特币,70万个比特币总价值约617.25亿美元。 比特币价格查询结果 根据2025年11月25日的实时市场数据,比特币(BTC)的当前价格约为88,178.41美元。 70万美元能购买多少比特币?以当前价格计算,70万美元(700,…

    2025年12月11日
    000
  • 比特币长期走势看法,比特币走势近十年分析(2025年-2045年)

    本文旨在探讨从2025年至2045年间,特定数字资产的长期价值演变路径。通过分析宏观经济、技术革新与全球监管三大核心维度,为关注者提供一个多角度的思考框架,以理解其未来发展的潜在可能性。 一、宏观经济环境的影响 1、全球主要经济体的货币政策将是关键变量。持续的通胀压力或宽松的信贷环境,可能会促使资金…

    2025年12月11日
    000
  • 2025年适合新手小白的虚拟货币有什么?适合新手购买的加密货币推荐

    比特币、以太坊、稳定币和BNB是适合新手的入门级加密资产。比特币作为市场基石,具有高流动性与稀缺性,但价格波动大,需评估风险;以太坊不仅是数字资产,更是支持智能合约与DApps的开源平台,生态繁荣,已转向PoS机制,Gas费为其交易成本;稳定币如USDC、USDT锚定美元,提供市场避险功能,选择时应…

    2025年12月11日
    000

发表回复

登录后才能评论
关注微信