簡體   English   中英

jQuery / JS在文檔准備好之前加載內容

[英]jQuery/JS load content before document ready

我正在尋找一種解決方案(jQuery或純JS),該解決方案允許在完全加載DOM之前將HTML / JS內容加載到給定的DIV中。

<script>
$(document).ready(function() {
var mywidth = $(window).width();
if(mywidth > 1000) {
$("#mydiv").load("some_html_with_external_javascript.html");
}
});

效果很好-當然可以。 但是,如果加載的內容包含外部JS,則不會執行JS-Content。 我需要將JS和PHP混合在一起的東西,例如:

<div id="mydiv">
<script>
var mywidth = $(window).width();
if(mywidth > 1000) {
// <?php require_once "some_html_with_external_javascript.html"; ?>
}
</script>
</div>

您可以使用document.write來做到這一點。 只需在當前位置插入一個新的腳本標簽,該腳本標簽將在下一個(腳本)標簽之前執行(非常類似於php代碼)。 根據您的問題,請求的腳本被同步加載。

index.html:

<script>
console.log("first")
document.write('<script src="second.js"><\/script>')
</script>
<script>
console.log("third")
</script>

second.js:

console.log("second")

瀏覽器控制台將在登錄“ third”之前先加載second.js 因此,輸出是預期的:

  • “第一”
  • “第二”
  • “第三”

我想補充一點,如果可能的話,應該避免同步加載。 這是一個巨大的性能瓶頸。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM