javascript - 获取 HTML 元素的完整(原始)文本

标签 javascript html tags format full-text-search

编辑:看来我们通过注释确定了此问题的解决方案 - 这是通过获取 .outerHTML 属性的值来实现的。然而,当使用 externalHTML 时,至少 Firefox 和 Chrome 似乎仍然“规范化”了原始源代码。例如,outerHTML 为

<div id = "a">    <!-- string is 14 characters long //-->

仍然返回

<div id="a">      <!-- string is 12 characters long //-->

显然,如果结果字符串的格式与原始 HTML 源代码的格式相匹配,则问题将被视为已解决。啊!为什么outerHTML一定要调整原来的值?

--- 话虽如此:---

我正在寻找一种解决方案来获取单击的 HTML 标记的全文。

起点示例(注意故意合法,但格式困惑):

<div id = "a" style ="color: blue ;">text</div>

// Returns: div
var doc = document.getElementById("id").tagName;

// Returns: array of attribute name/value pair (without = or ")
var attrs = document.getElementById("id").attributes;

当元素 #a 被单击时,我们如何生成以下文本字符串:

<div id = "a" style= "color: blue ;">

到目前为止我似乎还没有找到解决方案。

这是做什么用的?

最终,目标是确定标签的任意内容的字符长度。假设可以以任何产生可接受的 HTML 输出的方式对其进行编辑。例如,下面的两种情况应该返回:

<div id=a style="color:blue">            // 28
<div id = "a" style= "color: blue ;">    // 36

计数是最简单的部分。它正在获取该标记的实际字符串,就像它在源代码中出现的那样,这就是问题所在。

最佳答案

你试过这个吗?

document.getElementById('a').outerHTML

但这并不适用于我猜的每个浏览器

关于javascript - 获取 HTML 元素的完整(原始)文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32468640/

相关文章:

javascript - 如何从 Javascript 执行 Python 脚本?

php - 从客户端向服务器发送 30 个变量的最佳方式是什么?

javascript - 使用 localforage 更新一项

javascript - 如何修复 Javascript 函数的 'Typerror is undefined' 消息?

javascript - 无法在 Safari 中获取和更新 CSS 样式

ruby-on-rails - 尝试创建 'map' 时未定义方法 'tags'

html - 如何跳过 HTML 中的 <p> 标签?

java - 性能 : Android views generated programmatically vs xml views

javascript - .animate() 的 jQuery 自定义回调

javascript - 在本地存储 JavaScript 中保存以前的提交