【问题标题】:jQuery selection on style attribute not working in IE样式属性上的 jQuery 选择在 IE 中不起作用
【发布时间】:2014-11-28 22:01:18
【问题描述】:

我有一个从 doc 文件导出的 html 指南。我正在使用 jquery 来解决将单词导出到 html 的方式的一些外观问题。我的脚本可以在 FF 和 Chrome 中运行,但不能在 Internet Explorer 中运行。

我的 jquery 示例:

$("span[style='mso-tab-count:1']").html(' ');

我使用的代码示例:http://jsfiddle.net/37hqLrcn/1/

知道我可以做些什么来使它在所有浏览器中都能正常工作吗?

【问题讨论】:

  • 您可以选择不同的跨度吗?
  • 你使用的是哪个版本的IE,在什么文档模式下? (按 F12 - 开发人员工具会告诉你。)我似乎记得 IE7(以及兼容模式下的较新 IE 版本)无法处理使用 style 属性的选择器。
  • 我用的是IE11,任何版本的IE都会出现这个问题。加载的jquery js会不会有问题?打开jsfiddle链接查看问题。
  • 可能还有其他js错误。

标签: jquery internet-explorer browser cross-browser


【解决方案1】:

Internet Explorer 将在 style 属性的末尾添加一个分号,并在冒号后添加一个空格,因此您的选择器不匹配。

如果你想完全匹配,那么你需要两个选择器:

$("span[style='mso-tab-count: 1 dotted;'],span[style='mso-tab-count:1 dotted']").html('  ');

有一个更新的小提琴here 显示它正在工作。 IE 是一个具有 iframe 安全性的 PITA,所以你可以直接看到结果here

【讨论】:

  • 在我的 IE 11 中,第一个链接不起作用,第二个链接根本不显示任何内容。
  • 从第二个链接中删除了 light/。现在http://fiddle.jshell.net/37hqLrcn/29/show/ 工作。谢谢,对我来说也是新手。
  • 奇怪,fiddle.jshell.net/37hqLrcn/29/show 在 IE 中为我工作,但 fiddle.jshell.net/37hqLrcn/29 不行。
  • 是的,我玩得很开心。这取决于 jsfiddle 是否想在 iframe 中显示它 - 奇怪的是它偶尔决定或不决定的完全相同的 URL。但是所有这些都是 jsfiddle 特有的——正如 Martin 指出的那样,它甚至拒绝加载 jquery,所以我无能为力来解决这个问题
  • 是的,你的权利。最后,这个解决方案对我来说非常有效! :) 谢谢 Rhumborl!
猜你喜欢
  • 1970-01-01
  • 2013-12-13
  • 1970-01-01
  • 2011-05-29
  • 2010-09-29
  • 2014-06-29
  • 1970-01-01
  • 2011-02-15
  • 2015-09-01
相关资源
最近更新 更多