【问题标题】:Javascript: replace() function not working in Mac safariJavascript:replace() 函数在 Mac Safari 中不起作用
【发布时间】:2014-06-19 15:38:10
【问题描述】:

我有下面的一组代码来替换字符串中的特定标签。它在 Mac safari 中不起作用,但在 windows chrome 和 firefox 中正常工作。

错误:TypeError:“未定义”不是对象(正在评估“n.innerHTML.replace”)

html_data = html_data.replace(/para/g, "p");
html_data = html_data.replace(/useful/g, "span");
html_data = html_data.replace(/extra_info/g, "span");

【问题讨论】:

标签: javascript safari


【解决方案1】:

错误:TypeError:“未定义”不是对象(正在评估“n.innerHTML.replace”)

这意味着要么 n 未定义,要么 n.innerHTML 未定义。这与替换功能无关。 由于您没有提交完整的代码,您可以检查哪个未定义吗?

【讨论】:

  • n 已定义,否则在 undefined 上尝试 .innerHTML 会抛出错误
【解决方案2】:

您的错误消息表明您正在尝试调用未定义对象的.replace 方法。

因此,您的问题是 nn.innerHTML 未定义(由于我们掌握的信息有限,无法辨别原因)并且与 .replace 完全无关。

【讨论】:

  • 我用过Jquery插件版本1.10.2。
  • @pratiknagariya 这完全不相关。
  • 在这种情况下,您需要在问题中提供更多信息。首先,您引用的代码不是 jQuery 源代码的一部分,那么您怎么可能在“在 jQuery 插件中”得到那个错误?!
猜你喜欢
  • 2017-05-25
  • 1970-01-01
  • 2017-09-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-07
  • 1970-01-01
相关资源
最近更新 更多