問題タブ [howler.js]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
254 参照

javascript - あまり多くの if ステートメントを使用せずにメディアの再生/一時停止を切り替えますか?

次のようなウェブサイト用の曲のプレイリストを作成しています。 ここに画像の説明を入力

ただし、次のようなボタンを切り替えるときにユーザーが実行する可能性のあるすべての case ステートメントを実装する適切な方法を見つけるのに苦労しています。

  • 1 つの再生ボタンのオンとオフを切り替える
  • 1 つの再生ボタンをオンに切り替えてから、別の再生ボタンをクリックして、前の再生ボタンをオフに切り替える必要がある
  • 等々。

現在、私のコード (以下) は、ユーザーが再生ボタンのオンとオフを切り替えてから別の再生ボタンをクリックした場合を除いて、すべてのケースで機能します。この特定のケースでは、最近クリックされたアイコンだけでなく、両方のアイコンが一時停止ボタンに切り替わります。これが発生する理由はわかっています。ID がlastPlayed古い再生ボタンに残っているため、トグルifステートメントがトリガーされるためです。

if私の質問は、考えられるすべての結果について特定の声明を出すことなく、これらすべてのケースをカバーする再生ボタンの切り替えを設定する簡単な方法はありますか?

より良い解決策を見つけるか、私の 1 つのバグを修正するかのどちらかが機能しますが、よりクリーンなコードが常に優先されます。助けてくれてありがとう!

特定の曲の div の HTML は次のとおりです。