jquery - 使用Jquery解析网页的html,修改,然后重新插入网页

标签 jquery html dom

我目前正在尝试在网页中的某些词周围添加标签。这个网页可以有许多不同的 ID、类和名称,所以如果我想在“foo”周围放置一个跨度,我执行以下操作很重要:

<p class='foo'>blah blah blah foo blah blah blah </p>

变成

<p class='foo'>blah blah blah <span class='bar'> foo </span> blah blah blah </p>

不是

<p class='<span class='bar'> foo </span>'>blah blah blah <span class='bar'> foo </span> blah blah blah </p>

我正在研究使用以下代码解析网站:

var obj = $(this.innerHTML);  //in my selector which selects the part of the website I want to apply the span to

我可以在 firebug 中浏览此数据结构,但事实证明修改它(或搜索它)更加困难。

如果我查看 obj[1],innerHTML 属性如下所示:

<h4 id="3423df" class="pzCMD">blah blah foo blah </h4>

我不知道如何修改此元素(如果可能)或向其添加新节点。我可以通过查看 textContent 来提取“文本”

obj[1].textContent = blah blah foo blah

但我不确定如何将此元素的 html 代码更改为

<h4 id="3423df" class="pzCMD">blah blah <span class='bar' foo <span> blah </h4>

感谢您的帮助,对于冗长的解释深表歉意。

最佳答案

jQuery.add()允许您动态附加 dom 元素,但也可以直接放入 Jscript 中:

 var obj = $(this.innerHTML); 
 obj[1].innerHTML = obj[1].innerHTML+'blah hi</span>';
 //<h4 id="3423df" class="pzCMD">blah blah <span class='bar' foo <span> blah blah hi  </span> </h4>

关于jquery - 使用Jquery解析网页的html,修改,然后重新插入网页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3579599/

相关文章:

jquery - 从 .data jquery 获取值(value)

jquery - 如何在jquery mobile中的非ajax导航中显示加载程序?

jquery mobile 水平控件组,混合,包括文本框

Javascript 对象到 HTML 转换函数

javascript - 如何克隆具有自定义属性的 HTML 节点?

javascript - jQuery 模板插件还是自定义函数?

javascript - 滚动事件上的 jQuery .addClass() 不起作用

java - Android Studio - 获取数字而不是 HTML 内容

javascript - SVG 背景可以交互吗?

javascript - 如何在纯 JavaScript 中检查元素的颜色是否等于其背景颜色(渲染后)?