為什麼在知乎原始碼中沒有看到沒有 JavaScript 指令碼檔案引入?

時間 2021-05-31 17:07:13

1樓:

我覺得以上各位都沒有說到點兒上,我來告訴你,原因。

1.指令碼的確引入了,在頁面底部。

2為什麼要放底部,這個是前端優化中的一條,指令碼放在前面,指令碼檔案請求完畢後,會去執行能執行的指令碼函式。而執行指令碼的時,會柱塞dom的載入,換句話說,一旦dom載入被柱塞 ,你看頁面就是一片空白。這是多麼糟糕的體驗啊。

3.所以,為了盡可能快的載入dom,讓頁面顯示出來,就不應該把指令碼引入放在前面,而是應該放到最後。瀏覽器處理頁面最優順序是,先載入dom,再渲染,再執行指令碼。

4.基於第三條,你看到的入流的網頁,樣式一律在頁面頭引入,無特別需要,指令碼引入一律放最後

update

另外再補充一點,有的指令碼通過module動態寫入的,原理是拼接,

再document.write寫入,毫無疑問,也要放到最後,所以這種情況你是看不見顯式的指令碼引入的

2樓:沙偉

你可以看下 Steve Souders - High Performance Web Sites 這本書 ,裡面提到的加快網頁開啟速度其中的一條原則 ,就是把js放在html檔案底部(並不是沒有引入JS檔案)

對於在知乎上看到「影子有沒有厚度」這樣的問題,心裡是一種怎麼樣的感受?

如果這種人心理有問題,那你的問題是他的100倍。你的問題在於,看到問題只急於嘲笑,而不會去思考。你能解答出來這個問題嗎?你能解答的多好。你的問題在於,你除了嘲笑,不會別的了。也許你很需要靠這樣的策略來彌補自己內心的自卑。 先是覺得這個問題很白痴,想一想之後覺得這是乙個有意思的問題,看完了大家的回答之...

為什麼在知乎上看到的都是反對禁食狗肉的,但是在相關意見徵求稿下面的投票裡,同意禁食狗肉的卻是大多數?

淼歌 因為不是實名制一人一票,其次,網際網路投票只有代表了網際網路生態。現實中沉默的大多數。成為了飯圈刷票的結果。其次不能因為投票多寡看這個事情。拜犬教徒靠傳教獲得人數優勢不是他們逼迫人們改變世俗生活理由。 peggy 我因為什麼原因不能吃什麼,也請寫在公民權裡。一般來說 保護珍稀物種,禁食xx。食...

知乎為什麼沒有英文介面?

Ezkda CONSOLE 知乎是華人的問答平台,而不是英語地區的 下面有人舉出的Quora是面向英語地區的問答,不是面向中文的 這種不存在國際之間任何語言都通用的平台,只存在單一平台 1.there is Quora 2.what s the point if all answers are wr...