Javascript JS跨浏览器兼容性问题

Javascript JS跨浏览器兼容性问题,javascript,html,google-chrome,firefox,Javascript,Html,Google Chrome,Firefox,这段代码在Chrome中运行良好,但在Firefox或IE中不起作用 <script> $(document).ready(function(){ var currentOne=$("#instructions"); currentOne.addClass("visibleLabel"); $('map area').mousemove(function(e) { $(currentOne).removeClass("visibleLabel

这段代码在Chrome中运行良好,但在Firefox或IE中不起作用

<script>
$(document).ready(function(){
    var currentOne=$("#instructions");
    currentOne.addClass("visibleLabel");

    $('map area').mousemove(function(e) {
        $(currentOne).removeClass("visibleLabel");
        currentOne = '#' + $(this).data('label');
        $(currentOne).addClass("visibleLabel");
    });

});
</script>

<img src="http://greenparty.org.uk/assets/images/site_graphics/national/greenmap.png"
    usemap="greenuk" id="theGreenMap">

<map name="greenuk">
    <area shape="poly" id="region-southeast"
          data-label="southeast" coords="256,485,262,486,285,542,301,531,344,536,349,547,298,577,263,574,234,587,205,577,202,562,216,513,214,499,247,498"
          alt="southEast" href="south-east" />
    <!-- etc. -->
</map>

$(文档).ready(函数(){
var currentOne=$(“#指令”);
currentOne.addClass(“visibleLabel”);
$('map area').mousemove(函数(e){
$(currentOne).removeClass(“visibleLabel”);
currentOne='#'+$(this.data('label');
$(currentOne).addClass(“visibleLabel”);
});
});

如果您在Firefox中尝试,您将无法单击所需的地图部分,但在Chrome中您可以单击。

您的问题与您的脚本无关(您可以完全删除它,但问题仍然存在),与您的HTML有关

usemap
属性必须有一个前导的
#
。根据:

usemap
属性(如果指定)必须是对
map
元素的有效哈希名称引用

A是

一种字符串,由“#”(U+0023)字符和与元素的name属性值完全匹配的字符串组成


您的
usemap
值没有一个前导的
#
,Chrome接受该值(超出规范要求),Firefox不接受。在
usemap
属性中添加一个前导的
可以修复您的代码。

用提琴测试一下怎么样?哪个部分不起作用了?Moe,试着在相应的浏览器中使用
调试器来查看发生了什么。。。也许这是打破了铬,但铬更宽容。对于Chrome调试器、FireFox Firebug(需要安装)和IE的调试器,请使用
F12
,并检查控制台选项卡是否抛出错误。请提供一把小提琴,以便我们可以看到代码的作用。另外,请围绕您的问题添加更多的上下文,例如:a)您的代码目标是什么,
b)什么不起作用,
c)您尝试了什么
@Growler非常感谢您的提示。我添加了提琴,还安装了firefox firebug,我正在尝试解决这个问题。谢谢