JavaScript 无法在 Firefox 中运行

标签 javascript html

我用javascript编写了一段代码。该代码在 IE、Chrome 和 safari 中运行良好,但在 Firefox 中出现问题。我的几乎每个 JavaScript 函数都无法在 Firefox 中运行。下面是我的示例代码。

function changelink(str)
{
    str.className="cpageitem";
    str.href='#';
}

该函数是在单独的 javascript 文件中编写的。页面加载后就会调用它。

<body onload='changelink(home)'>

可能的问题是什么?

最佳答案

<html>
    <head>
        <script>
            function changelink(str)
            {
                str.className="cpageitem";
                str.href='#';
            }
        </script>
    </head>
<body onload='changelink(home)'>
    <a name="home" href="http://www.nohouse.net">Home</a>
</body>
</html>

我编写了一个演示代码来重现您的问题,也许您错过了为“Home”添加 id。 此问题是由 IE 处理标签名称引起的,该标签名称没有在其全局上下文中添加 id 属性,但 chrom/FF 没有这样做,因此您的示例“home”不是您要在DOM。

你可以这样改变它:

<html>
    <head>
        <script>
            function changelink(str)
            {
                str.className="cpageitem";
                str.href='#';
            }
        </script>
    </head>
<body onload='changelink(home)'>
    <a id="home" name="home" href="http://www.nohouse.net">Home</a>
</body>
</html>

但这可能不是最好的解决方案,您应该获取 DOM 对象然后使用它,不要在全局上下文中使用 id 属性作为 DOM 引用。只是建议。

关于JavaScript 无法在 Firefox 中运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5062290/

相关文章:

javascript - 与自实例化的构造函数相比,使用对象文字是否有性能优势?

javascript - 如何使 jQuery scroll() 函数触发第二个函数?

html - CSS - 在 wordpress 站点中对齐图像

html - 折叠媒体查询中的表格单元格以发送电子邮件

javascript更新或向数组添加值

html - 如何更改整个页面的默认滚动条而不仅仅是在一个 div 内

javascript - jQuery 查找 id 然后执行操作

javascript: namespace 污染

javascript - 使用 animate css 按顺序动画元素

asp.net - 获取 .NET 中特定 div 内的控件列表