【问题标题】:Js works in IE, Chrome but not FirefoxJs 适用于 IE、Chrome 但不适用于 Firefox
【发布时间】:2012-08-28 22:33:10
【问题描述】:
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <title>Remote Control</title>
  </head>
<link rel="stylesheet" href="/../.." type="text/css" />
<title>page title</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<SCRIPT LANGUAGE="JavaScript" SRC="popup.js" > </script> <!-- <---- Problem, doesn't work in FF but ok in IE/Chrome -->
<body>

该脚本不会像在 IE 和 chrome 上那样在 Firefox 上执行。这是为什么呢?

谁能告诉我需要做什么才能让它在 FF 中工作?

【问题讨论】:

  • 你得到什么错误?在firefox上安装firebug,帮你调试getfirebug.com
  • 我有萤火虫,它会加载我猜的脚本。它没有报告任何错误.. 似乎什么也没发生
  • @Charles 将光标悬停在 Chrome/IE 中的任何按钮上,就会弹出说明。

标签: javascript html cross-browser


【解决方案1】:

您的popup.js 文件中充满了对名为document.getelementbyid 的方法的引用。 JavaScript 中没有这样的方法,因为它是一种区分大小写的语言,这就是您的代码在 hidep1() 函数开头中断的原因。:

if (document.getelementbyid) {

将所有出现的getelementbyid 替换为getElementById,然后重试。

【讨论】:

  • 哇,成功了!谢谢!嗯,我想知道为什么其他浏览器能够呈现它..
  • 实际上,您的代码根本不应该工作,因为正如我已经说过的,JavaScript 是一种区分大小写的语言,而我所知道的所有浏览器都满足这一要求。