編輯:使用 Coll 的 innerText 方法和 Icekid 的滾動行為解決了這個問題。謝謝!
我正在使用 set innerHTML<mark>在一系列 div 中應用標簽。例如,用戶按下一個鍵,<mark>然后從:
<mark>This is a demonstration.</mark> To show what I mean.
到
<mark>This is a demonstration. To show what I mean.</mark>
這很好用,除非涉及到滾動。被標記的文本是可變的,有時需要 div 滾動。我使用以下 JavaScript 滾動視圖:
function prompt_scroll() {
document.getElementById("next").scrollIntoView({ behavior: 'smooth'})}
問題是每次發生這種情況時,新設定的 innerHTML 開始滾動到頂部,然后滾動到<mark>標記的末尾。那種跳起來然后滾動就足以讓人暈船了!
我認為我需要的解決方案是將已滾動的 innerHTML 設定為與我在上面共享的 JS 代碼相同的點。我只是不知道如何做到這一點,或者是否有更好的解決方案來防止滾動到頂部。我要補充一點,我仍在學習 JS 的訣竅,所以我可能需要一些關于如何以及為什么的額外資訊。感謝所有指導。
uj5u.com熱心網友回復:
你可以加
yourElememt.scrollIntoView({behavior:"smooth", inline:"center",block:"center"})
代替“中心”,您可以使用
//start, "end" ,or "nearest"
將其固定到您想要的位置
我認為你應該使用nearest你的情況
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/437801.html
標籤:javascript html
上一篇:如何更改帶有懸停鏈接的按鈕的背景
下一篇:獲取span元素的內容
