我需要在頁面開始加載之前執行一個JavaScript?我該怎麼做?首先我的腳本應該在腳本完成後執行,如果我需要我應該加載頁面,否則我不會加載它。例如,如果我的腳本重定向到另一個頁面,我不應該加載當前頁面,否則我應該加載它。如何在dom準備好之前執行javascript?
回答
簡單的寫在腳本標記你的腳本在body標籤的第一元素:
- 更新 - 隱藏其他網頁元素,以飽滿的寬度和高度,使用DIV
,如果你想顯示頁面,隱藏div,這將解決問題
是的,我做了...但它是頁面加載後執行... – Ver 2010-10-18 13:41:54
爲隱藏頁面,使用div全寬和高度,如果你想顯示頁面,隱藏div,這將解決問題 – 2010-10-18 13:47:52
腳本標記在遇到它們時立即執行。只需將腳本標籤提前放好,然後在條件爲真時使用重定向。掛鉤window.onload事件處理程序是如何讓JavaScript在加載時觸發的。
是我的腳本儘快執行...但它加載當前頁面1秒,然後執行我的腳本... – Ver 2010-10-18 13:43:36
就做服務器端...
你目前的邏輯,似乎更適合在服務器端,如果你真的想完全避免頁面加載..
不知道,但我想這是重定向到JavaScript的版本的網頁/網站。因此,這將取決於瀏覽器。 – user113716 2010-10-18 13:51:18
@patrick,看起來這樣..我的重點主要是**加載**部分,這是不可避免的...對於*渲染*有解決方法,確實.. – 2010-10-18 13:56:07
是否有可能您最初只提供一個頁面,其中只包含需要在HTML文檔中執行的JavaScript代碼?然後您可以根據JavaScript的結果請求您想要的頁面。
您可以使用jQuery load()方法有條件地加載頁面的一部分,它在DOM準備好之前未運行腳本,但可能會實現您想要執行的操作。
您無法在加載頁面之前運行腳本(不會搞亂文檔類型),但可以在頁面中儘早放置腳本,即在head
部分。
在腳本完成之前,您無法停止加載頁面。該頁面將繼續在後臺加載,但在腳本完成之前不會渲染。
如果您在腳本中執行重定向,頁面將停止加載,但是在等待新響應到達時已經加載的內容將會呈現。
你的答案是非常有用的,但我看到谷歌正在做類似的事情,所以這些網址不斷變化。我需要在我們的網站上做同樣的事情。請讓我知道是否有任何方式或框架來實現此目標..在此先感謝.. – 2012-12-12 09:13:30
@DilipRajkumar:谷歌沒有使用Javascript來重定向用戶。 – Guffa 2012-12-12 10:08:10
Ohh ok ..那我該怎麼做到這一點..我有很多認證的html頁面,如果他們沒有通過身份驗證,它必須重定向到登錄頁面..請幫助.. – 2012-12-12 10:28:00
- 1. dom準備好後執行javascript
- 2. 在整個DOM準備好之前執行JS
- 3. 在DOM準備好之前顯示spinner.gif
- 4. 在我準備好數據之前,如何防止執行cellForItemAtIndexPath?
- 5. 如何在DOM準備好之前阻止表單提交?
- 6. 在DOM準備好之前運行jQuery代碼?
- 7. 如何在DOM準備好後執行angularJs函數?
- 8. Javascript代碼在所有元素準備好之前得到執行
- 9. 在DOM準備好之前插入CSS到<head>?
- 10. 在DOM準備好之前用jQuery淡化圖像
- 11. 自執行函數是否在dom準備好運行?
- 12. 使用DTM工具在DOM準備好之前加載同步第三方JavaScript
- 13. Angularjs dom加載準備好
- 14. FBJS和Dom準備好
- 15. DOM中準備好了GWT
- 16. 從模塊內執行DOM準備好的JQuery函數?
- 17. 當DOM準備好插入順序時執行處理程序
- 18. 如何檢查DOM是否準備好使用JavaScript?
- 19. 如何在webview準備好之前完成進度條?
- 20. 在關閉另一個之前可以執行MySQLi準備好的語句嗎?
- 21. 準備好塊並在準備就緒後執行隊列
- 22. 如何讓javascript在dom和css準備就緒時執行,但不是圖像
- 23. 流星在DOM準備好之前加載腳本 - 腳本在meteor.startup函數中
- 24. DOM準備好後加載iframe。文檔準備好
- 25. JQuery(document).ready在文檔準備好之前仍然運行?
- 26. 防止JavaScript的執行,如果沒有準備好
- 27. 在DOM看起來準備好之前,YUI中的onDomReady會觸發?
- 28. 修改DOM後如何確保DOM已準備好再次
- 29. 在dom正在加載之前執行javascript
- 30. 在事務中執行它們之前準備多個語句?
從您的評論下面,我猜測腳本首先執行,但頁面的其餘部分有第二個加載,而新的HTTP請求正在等待響應。也許你可以嘗試在'
這是一個壞主意,如果它是爲了安全。所有內容都發送到計算機,任何觀看流量或禁用JS的人都可以獲取內容。 – epascarello 2010-10-18 13:53:27
@epascarello - 是的,我們不知道最終目的是什麼。我想這可能是一個簡單的重定向到一個JavaScript增強頁面。你是對的,如果考慮到安全性,這不是一個解決方案。但隨後任何JavaScript解決方案都會通過禁用javascript來失敗。 – user113716 2010-10-18 13:57:00