jQuery显示隐藏在Chrome和FF中不起作用
我试着在三个div上做一个简单的显示/隐藏。它在IE中运行良好,但onClick函数在Chrome或FireFox中不起作用 以下是我的代码(简化了div内容):jQuery显示隐藏在Chrome和FF中不起作用,jquery,html,google-chrome,Jquery,Html,Google Chrome,我试着在三个div上做一个简单的显示/隐藏。它在IE中运行良好,但onClick函数在Chrome或FireFox中不起作用 以下是我的代码(简化了div内容): $(函数showHide(){ $(“#展示观众”)。单击(函数(){ $(“#行为”).hide(); $(“#收购”).hide(); $(“#观众”).show(); }); $(“#showbehavior”)。单击(函数(){ $(“#行为”).show(); $(“#收购”).hide(); $(“#观众”).hide(
$(函数showHide(){
$(“#展示观众”)。单击(函数(){
$(“#行为”).hide();
$(“#收购”).hide();
$(“#观众”).show();
});
$(“#showbehavior”)。单击(函数(){
$(“#行为”).show();
$(“#收购”).hide();
$(“#观众”).hide();
});
$(“#showacquisition”)。单击(函数(){
$(“#行为”).hide();
美元(“#收购”).show();
$(“#观众”).hide();
});
});代码>
受众数据
行为数据
采集数据
删除onClick=“showHide”
它不是必需的
因为您已经使用jQuery绑定了事件处理程序,所以不需要使用内联单击处理程序。它的语法也不正确
另外,修改输入
,因为它是空元素
<input type="button" id="showaudience" value="Audience" />
受众数据
行为数据
采集数据
您可以更改jQueryonLoad
处理程序,将单击处理程序直接应用于按钮元素,并从中删除onclick
属性,还可以使
标记自包含,因为它们不需要关闭标记
$(函数(){
$(“#展示观众”)。单击(函数(){
$(“#行为”).hide();
$(“#收购”).hide();
$(“#观众”).show();
});
$(“#showbehavior”)。单击(函数(){
$(“#行为”).show();
$(“#收购”).hide();
$(“#观众”).hide();
});
$(“#showacquisition”)。单击(函数(){
$(“#行为”).hide();
美元(“#收购”).show();
$(“#观众”).hide();
});
});代码>
受众数据
行为数据
采集数据
Erm,是的。你使用的是哪个版本的chrome?43.0.2357.65 m版-当我在chrome上的JS FIDLE中运行它时,它可以工作,但当我在chrome的开发服务器上预览它时,它不能工作。一个与你的问题无关的简单建议:你应该向所有按钮添加一个类,然后简单地触发$('.myClass').hide()$(“#myButton”).show()
甚至连接调用$(“#myClass1,#myClass2”).hide()
这样可以节省几行代码和jQuery调用。对于3个按钮,它可能看起来不必要,但是如果你有20个,它可能会很有用。确保页面上的链接正确链接到jquery。我们不能再多说了……为什么要将事件侦听器绑定放在showHide()函数中?这意味着您需要调用showHide()
函数来添加单击事件侦听器。。。这不是有缺陷的逻辑吗?(真的很好奇)@geogelee,Op已经用文档就绪处理程序包装好了。他提供了showHide
name@GeorgeLee,请通过您访问的链接provided@Christine,尝试从$中删除showHide
(函数showHide(){
),然后检查您的浏览器中是否有任何错误console@Satpal我得到一个错误:$未在此行定义:$(函数showHide(){我知道有没有showHideincluded@Christine,则jQuery未加载。请检查文件路径是否正确。请使用//ajax.googleapis.com/ajax/libs/jQuery/1.8.3/jQuery.min.js尝试一次。感谢您的共享,我的按钮上最初没有onclick属性,并尝试添加它们,因为我无法使其正常工作。