js异步加载脚本有哪些
2019-07-07 本文已影响1人
南蓝NL
defer 属性& anync,只在IE上面有效
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>defer</title>
<script>
window.onload = function() {
console.log("window.onload");
}
</script>
<script src="./defer.js" defer></script>
<script src="./defer.js" async></script>
</head>
<body>
</body>
</html>
动态的创建js
(function(){
var dom = document.createElement('script');
dom.type ='text/javascript';
dom.async = true;
dom.src= 'file.js';
head = document.getElementsByTagName('head')[0];
head.insertBefore(dom,head.firstChild)
})()
XHR
let xhr = new XMLHttpRequest();
xhr.open('get','index.js',true)
xhr.send();
xhr.onreadystatechange = function() {
if(xhr.readyState == 4 && xhr.status == 200){
console.log(xhr.responseText);
}
}