js操作元素導致元素錯位和大小改變

2022-01-15 04:04:45 字數 292 閱讀 9387

使用js迴圈的方式批量控制元素的大小時結果往往不盡如人意。

我總結了一條規律

在乙個迴圈體內不可以同時存在一下兩種操作,否則容易導致元素錯位或大小改變:

1.對元素的offsetwidth、offsetheight等與大小、位置有關的屬性的訪問

2.對元素的移動、改變大小(包括可能間接導致元素移動和改變大小的操作,例如建立插入或刪除字元/節點、將其移動到另乙個父容器中等)

如果有的話,將其拆分成兩個迴圈才行。

至於為什麼,在迴圈體內插入乙個alert(「」),然後執行一下你就知道了

js 操作元素

js新增元素 1 元素內部 在元素內部的尾部加上元素 function test prepend 在元素內部的前部加上元素 在元素內部的前部加上元素 function test 2 元素外部 after 在元素外部的尾部加上元素 在元素外部的尾部加上元素 function test before 在...

js 元素大小縮放例項

元素大小縮放是一套連貫事件,按下滑鼠不放,拖動滑鼠 然後鬆開。當按下滑鼠時,記錄元素大小 滑鼠按下的位置 狀態位。當滑鼠拖動時,計算元素呼叫後的大小。元素調整後大小 初始元素大小 滑鼠移動位置 滑鼠按下位置 當調整完成後,滑鼠鬆開這時重置狀態位,防止移動滑鼠時觸發移動事件。use strict cl...

js操作DOM元素

document.createelement document.getelementbyid 返回對擁有指定 id 的第乙個物件的引用。document.getelementbyname 返回帶有指定名稱的物件集合。document.getelementbytagname 返回帶有指定標籤名的物件集...