js對瀏覽器產生的影響

2021-07-28 18:48:44 字數 500 閱讀 4183

js 是單執行緒執行引擎。在我們動態修改一些屬性時會產生兩種效果:

1、repaint ----- 一部分重畫,修改 div 的顏色呀,但是尺寸沒有改變。

2、reflow ---- 元素的尺寸改變了,瀏覽器要重新布局。

瀏覽器是不會你改變一次樣式它就會 repaint 或 reflow 一次。而是把這樣的操作積攢一批,然後統一做一次 reflow。

這又叫做非同步 reflow或增量非同步 reflow。就是乙個函式執行完後把函式內所有樣式一下執行完畢。

例如:我們在做乙個簡單的反選的時候,如果反選函式裡面要執行乙個很大的運算,即使反選**執行完畢了,但是效果還是不會實現,而且會一直卡在**。因為 js 是單執行緒,後面的運算佔住了執行緒,所以瀏覽器在等待 js 執行完畢,才會進行 reflow。我們可以把兩個功能拆分開(因為函式執行完畢就釋放了,只要函式內某一運算過分大就不會影響效果),然後把大的運算拆分成很小的函式,讓定時器間隔呼叫,到達指定值定時器消失,。

js判斷瀏覽器,包括Edge瀏覽器

描述 判斷瀏覽器資訊 編寫 littleqiang w 日期 2016.1.5 版本 v1.1 判斷當前瀏覽型別 function browsertype else if fieversion 8 else if fieversion 9 else if fieversion 10 else ie版...

js 判斷瀏覽器是否IE瀏覽器

蒐羅各種方法來判斷瀏覽器是否為ie瀏覽器 1.最簡單的 來自 if 1,侷限 本判斷方法經過判斷在ie7 ie8 ie8相容模式 在ie9 ie10 ie11 不起作用 解釋 alert 1,2 相當於alert 1,2 tostring 這在ie與非ie上都相同,都會彈出 1,2 alert 1,...

js 判斷瀏覽器是否IE瀏覽器

蒐羅各種方法來判斷瀏覽器是否為ie瀏覽器 1.最簡單的 來自 if 1,侷限 本判斷方法經過判斷在ie7 ie8 ie8相容模式 在ie9 ie10 ie11 不起作用 解釋 alert 1,2 相當於alert 1,2 tostring 這在ie與非ie上都相同,都會彈出 1,2 alert 1,...