Javascript .click()执行在mozilla firefox中不起作用

Javascript .click()执行在mozilla firefox中不起作用,javascript,jquery,mozilla,Javascript,Jquery,Mozilla,我有一段简单的代码,出于某种原因,它适用于除Mozilla之外的所有浏览器 这是我的HTML: <img src="{{#asset}}menu_button.svg{{/asset}}" id="menu_button"></img> <img src="{{#asset}}exit.svg{{/asset}}" id="exit"></img> 在Firefox中单击图像时,不会发生任何事情。所有其他浏览器的工作方式都很有魅力。 我一直在关注

我有一段简单的代码,出于某种原因,它适用于除Mozilla之外的所有浏览器

这是我的HTML:

<img src="{{#asset}}menu_button.svg{{/asset}}" id="menu_button"></img>
<img src="{{#asset}}exit.svg{{/asset}}" id="exit"></img>
在Firefox中单击图像时,不会发生任何事情。所有其他浏览器的工作方式都很有魅力。 我一直在关注这篇关于onclick执行问题的帖子:

我已经应用了建议的更改,但没有成功

有什么想法吗

谢谢,
Matan

可能无法解决此问题,但在任何情况下,图像标记都应使用/>(或just.>)关闭。请参见

您的问题在于您没有将
事件
对象传递给函数

它在IE和chrome中工作,因为它们定义了一个
窗口.event
。Firefox没有

$(document).ready(function(){
    $("#menu_button").click(function(event){
        show(event);      
    });
    $("#exit").click(function(event){
        hide(event);      
    });
});
然后为每个函数定义第一个参数以接收
事件
对象

function show(event) {
    // ...
}

function hide(event) {
    // ...
}

仅供参考,您可以这样做:

$(document).ready(function(){
    $("#menu_button").click(show);
    $("#exit").click(hide);
});

现在,
这个
将是您的元素,第一个参数将接收
事件

您检查控制台是否有错误吗?代码看起来不错,您是否尝试过在('click')上使用
标记
?我想您想要的是
javascript
标记,而不是
java
HTML5样式的约定都是“void”标记(例如,

)应该不加斜杠地关闭。阅读HTML、JavaScript和CSS的代码样式约定的一个非常好的地方是由mdo编写的,mdo是twitter引导项目的主要贡献者之一。
$(document).ready(function(){
    $("#menu_button").click(show);
    $("#exit").click(hide);
});