jQuery .click to toggle div 内容
jQuery .click to toggle div content
我目前有以下div来显示某个结果
<div id="results">
<span id="eresult">0</span>|
<span id="gresult">0</span>|
<span id="aresult">0</span>|
<span id="presult">0</span>|
<span id="vpresult">0</span>
</div>
但是,我想在单击以下输入按钮时切换可见性:
<input id="rbu" type="image" src="toggle.png" width="50" height="50">
这是我的jQuery
$("#rbu").click(function () {
$("#results").toggle();
});
单击 div 后确实会消失,但不会再次出现。如何让它再次显示?
试试
$("#rbu").click(function () {
if($("#results").is(':hidden')) $("#results").show();
else $("#results").hide();
});
这与 Chrome 一起工作,您的代码没有任何变化:
$("#rbu").click(function () {
$("#results").toggle();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="results">
<span id="eresult">0</span>|
<span id="gresult">0</span>|
<span id="aresult">0</span>|
<span id="presult">0</span>|
<span id="vpresult">0</span>
</div>
<input id="rbu" type="image" src="toggle.png" width="50" height="50">
错误可能出在您的代码中的其他地方,请尝试清除它?
不要使用 .click - 如果你的 dom 改变了,它就不再起作用了..试试 .on 方法:
$("#rbu").on('click', function() {
$("#results").toggle();
});
如果#rbu 是 link 或带有自己的侦听器(事件)的按钮,试试这个:
$("#rbu").on('click', function(event) {
event.preventDefault();
$("#results").toggle();
});
我目前有以下div来显示某个结果
<div id="results">
<span id="eresult">0</span>|
<span id="gresult">0</span>|
<span id="aresult">0</span>|
<span id="presult">0</span>|
<span id="vpresult">0</span>
</div>
但是,我想在单击以下输入按钮时切换可见性:
<input id="rbu" type="image" src="toggle.png" width="50" height="50">
这是我的jQuery
$("#rbu").click(function () {
$("#results").toggle();
});
单击 div 后确实会消失,但不会再次出现。如何让它再次显示?
试试
$("#rbu").click(function () {
if($("#results").is(':hidden')) $("#results").show();
else $("#results").hide();
});
这与 Chrome 一起工作,您的代码没有任何变化:
$("#rbu").click(function () {
$("#results").toggle();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="results">
<span id="eresult">0</span>|
<span id="gresult">0</span>|
<span id="aresult">0</span>|
<span id="presult">0</span>|
<span id="vpresult">0</span>
</div>
<input id="rbu" type="image" src="toggle.png" width="50" height="50">
错误可能出在您的代码中的其他地方,请尝试清除它?
不要使用 .click - 如果你的 dom 改变了,它就不再起作用了..试试 .on 方法:
$("#rbu").on('click', function() {
$("#results").toggle();
});
如果#rbu 是 link 或带有自己的侦听器(事件)的按钮,试试这个:
$("#rbu").on('click', function(event) {
event.preventDefault();
$("#results").toggle();
});