javascript - jQuery:删除结束标记

标签 javascript jquery html

有没有办法使用 jQuery 删除单个结束 HTML 标记?

例子:

  <div class="one">
    <div class="two">CONTENT</div>
  </div>
</div>

我必须删除最后一个 ,这意味着 div.one 关闭后的关闭 div 标签。

不幸的是,我必须使用 JS/jQuery 来执行此操作,因为我在这个项目上使用的系统无法删除它。

最佳答案

不,那是不可能的。页面中根本没有结束标记。

结束标记在解析之前存在于 HTML 代码中,一旦解析,每个元素都是一个对象,而不是标记中的起点和终点。

浏览器会尝试修复无效标记,但问题是不同的浏览器会做不同的事情。一些浏览器可能会忽略额外的结束标记,而其他浏览器可能会暗示一个开始标记以使其成为一个完整的元素。您可以尝试重新排列元素,使它们恢复到没有额外结束标记时的状态,但要做到这一点,您需要知道所有不同的浏览器在解析代码时会做什么。

更糟糕的是,如果该代码位于另一个 div 中,则该标记将在那里结束,无效代码将出现在该标记之后。如何处理取决于您显示的代码之外的代码,而且不同的浏览器可能会以不同的方式处理无效代码。

关于javascript - jQuery:删除结束标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15587408/

相关文章:

javascript - 我在 Javascript 中有一个对象数组。如何循环遍历它以查找 'fname' 键的出现次数

jquery - reCaptcha Invisible,欧芹和ajax形式

javascript - jquery 单击事件在 ajax 事件后未触发

html - html网页上的滚动问题

html - 将一个 div 拆分为四个独立的 div

java - 无法使用 webdriver 找到 javascript 框架

javascript - 使用母版页和 Ajax 提交表单后返回页面顶部

javascript - 4个或更多相同的连续字母

javascript - 为什么使用字符串而不是直接方法调用来触发 Redux 存储中的操作?

javascript - 如何获取随机播放函数的输出并在 DOM 元素周围移动?