2017-05-24 75 views
0

我正在開發一個實時聊天應用程序。有一個聊天窗口,客戶可以與操作員聊天。所以我在每個即將到來的消息上實施通知聲音。如何給新消息通知聲音靜音聊天按鈕

我的問題是聲音正常到來,但問題是如果客戶點擊靜音聊天按鈕,它應該禁用,直到客戶再次單擊此按鈕播放此聲音如何靜音此聲音。

下面是我在jQuery的方法:

var audio = new Audio('sound/y.mp3'); 
 
$('#' + ctrId).find('#divMessage').append(
 
    '<div class="msg_wrap">' + 
 
    '<div class="avatar1"></div>' + 
 
    '<div class="direct-chat-text"><span class="userName">:' + 
 
    msg[i].userName + '</span> ' + '<span>' + msg[i].message + 
 
    '</span>' + '</div>' + '</div>' + 
 
    '<span style="margin-right: 30px;float:right;font-size: 11px;color: #8c8585;">' + 
 
    msg[i].chatTime + '</span>' 
 
).append(audio.play());

+0

請參閱此小提琴http://jsbin.com/higor/1/edit?html,output – User6667769

回答

0

只要把你的代碼在if塊。假設您有一個ID爲「isMuted」的複選框:

if($("#isMuted").is(':checked')) 
{ 
// do not play sound, maybe do something else, like flash the chat 
}   
else 
{ 
// if not checked, play sound as you already do 
var audio = new Audio('sound/y.mp3'); 
    $('#' + ctrId).find('#divMessage').append('<div class="msg_wrap">' + '<div class="avatar1"></div>' + '<div class="direct-chat-text"><span class="userName">:' + msg[i].userName + '</span> ' + '<span>' + msg[i].message + '</span>' + '</div>' + '</div>' + '<span style="margin-right: 30px;float:right;font-size: 11px;color: #8c8585;">' + msg[i].chatTime + '</span>').append(audio.play()); 
} 
相關問題