亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在Javascript中查找水平滾動條拇指的寬度

在Javascript中查找水平滾動條拇指的寬度

一只甜甜圈 2022-12-29 14:02:01
我正在創建一個書籍項目,如果單擊音頻按鈕,該書將被閱讀。在閱讀這本書時,我會突出顯示相應的詞?,F在當有一個長文本時,水平滾動條會隨著overflow-x: scroll;屬性的設置而出現?,F在,如果屏幕的可見部分被讀取,我需要將滾動條/幻燈片的拇指移動到內容的下一部分。問題來了。假設 div 寬度為650px,滾動寬度為1500px。如果650px讀取了 的內容,我需要顯示 next 的內容650px。如果我滾動太多scrollLeft: 650px,下一個內容的一部分將會丟失。650px所以,我也必須找到拇指的寬度。所以我需要的部分scrollLeft是650 - thumb's width。我如何找到拇指的寬度?還是有其他方法可以做到這一點?
查看完整描述

1 回答

?
慕運維8079593

TA貢獻1876條經驗 獲得超5個贊

這是解決您所問問題的一種方法。

設置

white-space: nowrap;在頁面加載時,由于在 CSS 中,它會將段落設置為一行。

兩個變量將分配給 DOM 中的元素;buttoncontent。

向右滑動

之后,當單擊按鈕(它可以是任何觸發器)時,所有內容所在的容器將scrollLeft內容scrollWidth5000px在本例中為 around)除以 3。在 JavaScript 中:

document.getElementById('container').scrollLeft += (content.scrollWidth / 3);

滿足您的需求,但這是一個基本示例。您可以在 MDN上閱讀有關scrollLeftscrollWidth的更多信息。

const button = document.getElementById('moveButton');

const content = document.getElementById('text');


button.onclick = function() {

  document.getElementById('container').scrollLeft += (content.scrollWidth / 3);

};

#container {

  width: 600px;

  border: 1px solid #ccc;

  overflow-x: scroll;

}


#text {

  white-space: nowrap;

}

<div id="container">

  <p id="text">Morbi eros ligula, hendrerit in imperdiet ac, porta ut ex. Suspendisse fringilla gravida turpis venenatis pharetra. Suspendisse potenti. Nunc facilisis dapibus tristique. Nunc id facilisis est, nec gravida diam. Duis feugiat quam ac velit consequat,

    vel pharetra odio convallis. Donec tempor, mi id sollicitudin lacinia, nunc augue cursus lacus, at pretium nisi quam non risus. Cras faucibus enim tellus, quis sollicitudin elit commodo nec. Nam ornare auctor lectus quis porttitor. Vivamus facilisis

    nisl id libero gravida, eget ornare erat mattis. Ut auctor commodo sollicitudin. Mauris lectus purus, commodo sit amet nunc non, lobortis feugiat metus. Fusce non aliquet velit. Etiam congue purus at quam pharetra porta. Etiam nec magna at elit ullamcorper

    varius ut vitae metus.</p>

</div>


<button id="moveButton" type="button">Move to right</button>


查看完整回答
反對 回復 2022-12-29
  • 1 回答
  • 0 關注
  • 91 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號