我试图使用此代码在播放和暂停按钮之间切换,但它似乎不起作用。如何点击
时如何在两个图像之间切换$("#infoToggler").click(function()
{
if($(this).html() == "<img src="http://tympanus.net/PausePlay/images/play.png" width="60px" height="60px"/>")
{
$(this).html("<img src="http://maraa.in/wp-content/uploads/2011/09/pause-in-times-of-conflict.png width="60px" height="60px"/>");
}
else
{
$(this).html("<img src="http://tympanus.net/PausePlay/images/play.png" width="60px" height="60px"/>");
}
});
由于
答案 0 :(得分:18)
label.tog > input {
display: none; /* Hide the checkbox */
}
label.tog > input + span {
text-indent: -9000px; /* Make text Accessible but not visible */
display: inline-block;
width: 24px;
height: 24px;
background: center / contain no-repeat url("//i.stack.imgur.com/gmP6V.png"); /*Play*/
}
label.tog > input:checked + span {
background-image: url("//i.stack.imgur.com/ciXLl.png"); /*Pause*/
}
<label class="tog">
<input type="checkbox" checked>
<span>Button Play Pause</span>
</label>
有用的原因是服务器没有新的请求加载图像:
<span class="tog">
<img src="play.png">
<img src="pause.png" style="display:none;">
</span>
$(".tog").click(function(){
$('img',this).toggle();
});
或者,假设我们有这个HTML和.tog
图像选择器:
<img class="tog" src="play.png"/>
var togSrc = [ "play.png", "pause.png" ];
$(".tog").click(function() {
this.src = togSrc.reverse()[0];
});
src
值和String.prototype.match()
如果你不知道初始状态(播放?暂停?)
,这很有用var togSrc = [ "play.png", "pause.png" ];
$(".tog").click(function() {
this.src = togSrc[ this.src.match('play') ? 1 : 0 ];
});
注意:,您需要预先加载图片的最后两个示例,以防止浏览器请求并从服务器加载新图像的时间间隔。
答案 1 :(得分:18)
另一种更简单的方法来处理它:
$("#infoToggler").click(function() {
$(this).find('img').toggle();
});
<div id="infoToggler">
<img src="image1.png" width="60px" height="60px"/>
<img src="image2.png" width="60px" height="60px" style="display:none"/>
</div>
答案 2 :(得分:1)
您可以使用.toggle()
功能。我已经更新了你的小提琴。此外,您还没有在图片代码中正确转义引号。
$("#infoToggler").toggle(function() {
$(this).html('<img src="http://maraa.in/wp-content/uploads/2011/09/pause-in-times-of-conflict.png" width="60px" height="60px"/>');
}, function() {
$(this).html('<img src="http://tympanus.net/PausePlay/images/play.png" width="60px" height="60px"/>');
});
答案 3 :(得分:1)
<div id="infoToggler"><img src="http://tympanus.net/PausePlay/images/play.png" width="60px" height="60px"/></div>
$(document).ready(function(){
var src1 = "http://tympanus.net/PausePlay/images/play.png";
var src2 = "http://maraa.in/wp-content/uploads/2011/09/pause-in-times-of-conflict.png";
$("#infoToggler").click(function(){
var src = $('#infoToggler img').attr('src');
if(src == src1){$('#infoToggler img').attr('src',src2);}
else{$('#infoToggler img').attr('src',src1);}
});
})
它正在工作,我检查了..