我有一个很好的音频播放按钮代码。点击后它变成一个暂停按钮。没关系,但我想保留一个暂停按钮。所以它应该只切换一次。很高兴添加一些代码,而不是用全新的代码替换。代码:
<script>
function a(el){
play()
}
function b(el){
pause()
}
$(".btn-play").click(function() {
var el = this;
return (el.t = !el.t) ? a(el) : b(el);
});
</script>
答案 0 :(得分:1)
假设el.t == false
表示b()
,只需添加预检:
$(".btn-play").click(function() {
var el = this;
if (!el.t) b(el);
return (el.t = !el.t) ? a(el) : b(el);
});
如果你的意思是另一个,那就用if (el.t) b(el);
就个人而言,我简化了代码:
$(".btn-play").click(function() {
var el = this;
if (!el.t) b(el);
el.t = false;
a(el);
});
答案 1 :(得分:0)
这个怎么样:https://jsfiddle.net/e0evwnvu/
$(document).ready(function() {
var isPauseButton = false;
$('#btn').click(function() {
if (!isPauseButton) {
play();
isPauseButton = true;
} else {
pause();
}
});
});
function play() {
alert('play');
}
function pause() {
alert('pause');
}
答案 2 :(得分:0)
对于&#34;这是一个相当普遍的答案;我只想使用按钮一次&#34;,因为问题中没有详细说明。
您可以使用$('.btn-play').attr("disabled", true)
或$(".btn-play").unbind("click")
停用该按钮 - 只需确保此选项仅选择您想要的按钮。
如果您希望按钮具有不同的功能(暂停而不是播放或其他),我建议您单独定义处理程序,以便您可以使用.unbind("click", handler1)
后跟.bind("click", handler2)
或以其他方式保留两个处理程序分开,as per documentation here。