【问题标题】:.html() method of jQuery not working properly in IE 9jQuery 的 .html() 方法在 IE 9 中无法正常工作
【发布时间】:2015-03-12 07:51:27
【问题描述】:
<h1>
    <span id="T-1">
        <div>1111</div>
        <div><h1>2222</h1></div>
        <div>33333</div>
    </span>
</h1>

我有这个 html 代码用于在 IE 9 中复制问题。我正在使用以下 js 代码:

console.log($("#T-1").html());

上面的代码没有获取完整的内部 html 数据。它正在获取部分 html 数据。任何人都可以看看这个问题。

控制台输出是:

<div>1111</div><div></div>

【问题讨论】:

  • 控制台打印什么?给出你看到的结果。
  • “它正在获取 html 数据的一部分” 那么,我们应该猜猜那是什么部分?
  • 请注意,将div 放在span 中是无效,允许浏览器做它想做的任何事情。
  • div 不是span 的有效子代。浏览器将通过将div 元素移出span 来纠正此问题,然后span 将清空。
  • "没有获取完整的内部 html 数据"...应该获取。 ID 必须是唯一的,您是否有任何其他具有相同 ID 的元素。

标签: javascript jquery html


【解决方案1】:

您将 h4 嵌套在 h1 中,这会导致您遇到错误。 编写有效的代码,如:

使所有 div 跨越

<h1 id="T-1">
    <span >1111</span >
    <span class="h4">2222</span >
    <span >33333</span >
</h1>

查看他的pen

【讨论】:

  • @t.niese 同意!,不知何故,浏览器设法在 span 内使用 div,但是当您将 h4 放入 h1 时,它会在控制台中停止,如果您有任何疑问,我建议您尝试相同事物! :)
  • @VilasKumkar,在我的原始 html 数据中将

    标记替换为

    标记。它将控制以下数据:
    1111
    (即原始 html 结构的某些部分)。此外,如果您在 IE9 浏览器中进行调试,您会看到 Jquery 代码没有按预期工作...

  • @TBasak 我没听明白,请您详细说明一下或更新您的相关代码
  • @TBasak Dude,“您将 h4 嵌套在 h1 中”这并不意味着您应该在 h1 中尝试任何“h*”标签
猜你喜欢
  • 1970-01-01
  • 2017-12-10
  • 2012-08-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多