パーツ番号 07-06-10 ・ JavaScript使用
ポッドキャスト再生速度切替UI
1x / 1.5x / 2xのボタンで再生速度を切り替えられる、ポッドキャストプレーヤー風UIです。
プレビュー
ソースコード
HTML
<div class="podwrap07-06-10">
<div class="podinfo07-06-10"><b>#42 デザインの余白</b><small>再生速度を選択</small></div>
<div class="speedbtns07-06-10">
<button class="sp07-06-10 active07-06-10" data-sp="1">1x</button>
<button class="sp07-06-10" data-sp="1.5">1.5x</button>
<button class="sp07-06-10" data-sp="2">2x</button>
</div>
</div>CSS
.d07-06-10 .podwrap07-06-10{ display:flex; flex-direction:column; align-items:center; gap:16px; }
.d07-06-10 .podinfo07-06-10{ text-align:center; font-size:13px; color:#333; }
.d07-06-10 .podinfo07-06-10 small{ display:block; color:#999; margin-top:3px; }
.d07-06-10 .speedbtns07-06-10{ display:flex; background:#f0f0f3; border-radius:99px; padding:4px; gap:2px; }
.d07-06-10 .sp07-06-10{ border:none; background:transparent; padding:7px 14px; border-radius:99px; font-size:12px; color:#666; cursor:pointer; transition:background .2s,color .2s; }
.d07-06-10 .sp07-06-10.active07-06-10{ background:#111; color:#fff; }JavaScript
(function(){
var root = document.querySelector('.d07-06-10');
var btns = root.querySelectorAll('.sp07-06-10');
btns.forEach(function(b){
b.addEventListener('click', function(){
btns.forEach(function(x){ x.classList.remove('active07-06-10'); });
b.classList.add('active07-06-10');
});
});
})();クラス名 .d07-06-10 は本ライブラリ内での識別用です。複数のパーツを同じページで使う場合は、重複しないよう名前を変更してください。