-1
ページがwebsocketイベントを受信するたびに、通知音が鳴ります。問題は、ユーザーがこれらのタブのうちの10個を開いている場合、10個のタブすべてがサウンドを再生することです。javascript:すべてのタブでコードを一度実行する
このコードをすべてのタブで一度だけ実行するには、サーバーサイドコードを変更しないでください。
ページがwebsocketイベントを受信するたびに、通知音が鳴ります。問題は、ユーザーがこれらのタブのうちの10個を開いている場合、10個のタブすべてがサウンドを再生することです。javascript:すべてのタブでコードを一度実行する
このコードをすべてのタブで一度だけ実行するには、サーバーサイドコードを変更しないでください。
This answerタブ間の通信についての質問は良いスタートかもしれません。
タブ間のコミュニケーションが強くなると、1つのタブを「リーダー」として指定して、その中でのみサウンドを再生できます。リーダーが死ぬと、残りの人たちが交渉して新しいリーダーを選ぶことができます。たとえば、各タブに長いランダムなIDを付けることができます。最も低いIDを持つタブは新しい「リーダー」になり、サウンドを再生する責任があります。