【问题标题】:jsfiddle works in FireFox, Chrome but not IE8jsfiddle 适用于 FireFox、Chrome 但不适用于 IE8
【发布时间】:2014-05-22 02:22:24
【问题描述】:

这是我的JSFiddle。它在 Chrome 和 FireFox 中运行良好,但在 IE8 中运行时出现此错误:

Message: Object doesn't support this property or method
Line: 244
Char: 9
Code: 0
URI: http://jsfiddle.net/js/Actions.js

我将此 JSFiddle 中的代码添加到我的网站,我在 IE8 上看到了同样的问题。我是否必须添加一些特定的东西才能让它在 IE8 中运行?

谢谢

【问题讨论】:

  • 在 IE8 中使用 jsFiddle 上的“运行”按钮时总是遇到问题。我只是不再使用那个浏览器了。
  • 在 IE8 模式下运行的 IE9 中没有看到该错误。 编辑:是的,我会……在我点击“运行”之后。
  • 在 IE8 中仍然不起作用。 ;)

标签: jquery internet-explorer-8


【解决方案1】:

jsFiddle 的一个脚本包含错误。它期望该元素已经被 MooTools 扩展,但事实并非如此。如果我知道怎么做,我会告诉 jsFiddle 开发人员他们需要将 e.target 包装在对 $() 的调用中:

http://jsfiddle.net/js/Actions.js 的第 244 行:

if (e && $(e.target).getParent().get('id') == 'm') {

编辑:作为一种变通方法,将此书签添加到您的链接栏并在页面加载时单击一次。它将使运行按钮处于不再发生错误的状态。

javascript: $$("#run > span"); void 0;

另一种解决方法是使用 ctrl+enter 而不是单击“运行”按钮。

虽然我们正在讨论通过小书签使 jsFiddle 与 IE 一起运行的主题,但当我将某些内容粘贴到脚本编辑器窗格中时,当 jsFiddle 工具栏出现问题后,我会使用以下方法让 jsFiddle 工具栏重新出现在视图中:

javascript: document.body.scrollIntoView(); void 0;

没有理由不能将它们合二为一——两者都不会对另一个产生任何不良影响:

javascript: document.body.scrollIntoView(); $$("#run > span"); void 0;

【讨论】:

  • 我在此处添加了指向此主题的链接...github.com/jsfiddle/jsfiddle-docs-alpha/issues/108
  • 是的,这是我们的错。这在开发版中已修复 - 我们将尽快将更改推送到生命服务器。
  • 此更改似乎尚未推送? JSFiddle 仍然无法在 IE8 上加载,兼容性与否。通常我不会真正关心,但在我目前的公司环境中,我仅限于 IE8。
  • @heiserman - 不,这是在一年前修复的。你今天看到的一定是一个新的回归。 JSFiddle 最近更新了,所以最近的更新可能是罪魁祸首。
【解决方案2】:

这不是你的脚本。我刚刚使用您选择的 jQuery 版本和所有不同的加载设置完全空运行 JSFiddle。

即使您的窗口中根本没有 javascript,您每次都会收到错误消息。

【讨论】:

  • 有趣。当我将该代码放在我的网站上时,我在 jQuery 的 IE8 中遇到了类似的错误。如果我去掉 jQuery,我看不到 IE8 错误。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-09-08
  • 2014-11-17
  • 2015-06-09
  • 2011-08-21
相关资源
最近更新 更多