色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

css拖動(dòng)點(diǎn)擊進(jìn)度條

隨著Web應(yīng)用程序的增長(zhǎng),交互性也變得越來(lái)越重要。當(dāng)需要向用戶(hù)顯示音頻或視頻時(shí),進(jìn)度條成為了一種重要的控件。在CSS中,我們可以輕松地創(chuàng)建一個(gè)可拖動(dòng)的點(diǎn)擊進(jìn)度條。

HTML:
CSS: .progress-bar { width: 300px; height: 6px; background-color: #ddd; border-radius: 10px; cursor: pointer; position: relative; } .progress { width: 0%; height: 100%; background-color: blue; border-radius: 10px; position: absolute; top: 0; left: 0; }

在上面的示例中,我們創(chuàng)建了一個(gè)具有灰色背景和藍(lán)色進(jìn)度的進(jìn)度條。默認(rèn)情況下,進(jìn)度條的寬度為0%。鼠標(biāo)在進(jìn)度條上時(shí),將會(huì)改變進(jìn)度條的寬度并顯示百分比。我們可以通過(guò)以下CSS來(lái)實(shí)現(xiàn)這一點(diǎn):

.progress-bar:hover .progress {
display: block;
}
.progress-bar:hover:before {
content: attr(data-progress);
display: inline-block;
position: absolute;
top: -25px;
left: 0;
width: 100%;
font-size: 12px;
text-align: center;
}
.progress-bar:hover:after {
content: '';
display: block;
position: absolute;
top: -5px;
left: calc(100% - 10px);
width: 0;
height: 0;
border: 5px solid transparent;
border-right-color: #888;
}

在上面的CSS中,我們通過(guò):hover來(lái)定義進(jìn)度條的鼠標(biāo)懸停狀態(tài)。我們還通過(guò):before和:after偽元素添加了一個(gè)指示百分比的標(biāo)簽和一個(gè)箭頭。我們還需要為進(jìn)度條添加一些JavaScript代碼:

const progressBar = document.querySelector('.progress-bar');
progressBar.addEventListener('click', function(e) {
const progress = document.querySelector('.progress');
const offsetX = e.pageX - this.offsetLeft;
const width = this.offsetWidth;
const percent = offsetX / width * 100;
progress.style.width = percent + '%';
progress.setAttribute('data-progress', percent + '%');
});

在這里,我們將進(jìn)度條的點(diǎn)擊事件綁定到.progress-bar元素上,并計(jì)算鼠標(biāo)的偏移量。我們還需要將進(jìn)度條的寬度設(shè)置為百分比,并將其存儲(chǔ)在[data-progress]屬性中,以便在鼠標(biāo)懸停時(shí)使用。現(xiàn)在我們已經(jīng)創(chuàng)建了一個(gè)可拖動(dòng)的點(diǎn)擊進(jìn)度條,用戶(hù)可以方便地控制音頻或視頻的播放進(jìn)度了。