我遇到了一個問題Mysite,導航欄是javascript和jquery的一些部分,我玩過一些代碼以嘗試在頁面查看前加載導航欄,但似乎無法看到找到正確的代碼。實現這一目標的正確方法是什麼?在頁面加載之前執行Javascript
回答
將您的腳本包含到<head></head>
中,這可能有所幫助。但是,仍然必須在任何JS被解僱之前加載DOM。
DOM不**必須在JavaScript執行前加載。 DOM **必須在JavaScript可以與之交互之前加載,但這不等同於不執行任何操作。 – 2012-08-02 08:04:30
他正在嘗試jqueryfy他的菜單 - 如果沒有準備好DOM,該如何工作? – saibotd 2012-08-02 09:44:53
就我所知,在頁面啓動之前無法真正加載HTML。您應該使用JQUERY Events等待顯示工具欄,直到它被加載。或者,也許只需將「display:none」設置爲工具欄,然後使用window.onload事件添加所有效果後顯示工具欄。
將執行該腳本whenver頁面加載
<script type="text/javascript">
window.onload=body_load;
function body_load()
{
dosomethingwithelementA();
}
</script>
<div id="A"></div>
或U使用jQuery做每當DOM準備
$(document).ready(function()
{
dosomethingwithelementA();
});
我相信問題不是如何推遲JS執行,直到整個頁面加載後,而是如何實際阻止加載頁面,直到JS與導航元素交互。這段代碼沒有做任何這些事情 – 2012-08-02 08:36:35
感謝這一點,但Elias是安靜的權利。我希望頁面等到JS加載完畢。然後在JS加載之後調用頁面的主體。 – 2012-08-02 21:10:35
有幾件事情,可以幫助:
將
<script>
標籤放在導航元素的正下方,如果是jQuery代碼,不要使用$(document).ready(function(){
包裝器,只要需要加載頁面,BC就會推遲執行。
或者,不要等待整個文檔準備好,實際上沒有任何東西阻止您執行諸如$('#navContainer').ready(function(){
之類的操作,只要導航元素已加載就執行jQuery位。這就是說,你不能真正確定什麼時候加載什麼,這有點不在你的手中。但是,我看到人們使用像
style="display:none;"
這樣的屬性呈現HTML,然後在完成需要完成/看到的任務時使用JavaScript刪除屬性。下行:一如既往:禁用JS的瀏覽器根本看不到任何內容。啊,好吧,擰他們還有更詳細的答案。例如:爲您的頁面提供一個空的內容div,並且只提供導航並將
onload
或$(doc).ready
事件綁定到ajax調用以獲取您網站的實際內容。但是,海事組織是一個臨界的瘋狂解決方法。
挑選任何以上選項,或使用所有的人都在一起
- 1. 在繼續執行JavaScript之前等待頁面加載
- 2. 如何在頁面加載之前執行Javascript函數?
- 3. jquery在加載頁面之前執行菜單加載
- 4. 在加載頁面中執行javascript
- 5. 在新頁面加載後執行JavaScript
- 6. 在頁面加載時執行javascript
- 7. javascript在頁面加載時不執行?
- 8. 在頁面加載之前執行Crossrider代碼
- 9. 如何在頁面加載之前執行jquery腳本?
- 10. Watir命令在頁面加載之前執行
- 11. Vaadin-JS在加載頁面之前執行
- 12. 在頁面加載之前在ajax請求的頁面上執行腳本
- 13. 將JavaScript加載到我執行它的任何JavaScript之前沒有的頁面
- 14. 是否有任何插件可以使JavaScript在頁面加載之前執行?
- 15. 在HTML頁面加載之前執行Javascript來填充下拉列表
- 16. 我可以在整個頁面加載之前運行JavaScript嗎?
- 17. 如何在頁面開始加載之前運行jQuery或JavaScript
- 18. WPF頁面NavigationService - 如何在執行頁面事件之前完全加載UI
- 19. 執行javascript作爲coldfusion頁面加載
- 20. 選擇頁面加載執行JavaScript
- 21. 已加載頁面後執行Javascript
- 22. 加載頁面,然後執行JavaScript的
- 23. 如何在加載父頁面之前加載子頁面?
- 24. 如何在頁面加載之前運行加載動畫
- 25. 在頁面加載之前刪除cookie
- 26. bxslider在頁面加載之前堆疊
- 27. document.body.appendChild在頁面加載之前
- 28. 在加載頁面之前編譯scss
- 29. onPageFinished在頁面加載之前觸發
- 30. 在jQueryMobile上加載並執行audio.js頁面加載AJAX頁面
顯示你的代碼。 – TRR 2012-08-02 07:59:05