這個問題在這里(檢測 DIV 是否有滾動條[重復])和關于 SO 的其他問題的回答不準確。答案沒有考慮到 div 的內容可能有float之后沒有被清除。的div.clientHeight和div.scrollHeight不能被用于檢測滾動行為。就像下面的例子:window.addEventListener("load",function(){ var div = document.querySelector(".container"); document.querySelector(".clientHeight").innerHTML = div.clientHeight; document.querySelector(".scrollHeight").innerHTML = div.scrollHeight;});.container{ width: 50px; min-height: 20px; border: 1px solid red;}.floated{ float: left;}<table> <thead> <tr> <th>clientHeight</th> <th>scrollHeight</th> </tr> </thead> <tbody> <tr> <td class="clientHeight"></td> <td class="scrollHeight"></td> </tr> </tbody></table><div class="container"> <div class="floated">Lorem ipsum dolor sit amet blah blah blah blah blah</div></div>
如何使用 vanilla javascript 確定 <div> 是可滾動的?
Cats萌萌
2022-01-07 13:08:56