欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

ajax加载html文件并执行其中的js代码,加载css样式_html/css_WEB-ITnose

程序员文章站 2022-06-05 20:12:22
...
function callback(res){

var node = document.createElement('div');

node.innerHTML = res;

document.body.appendChild(node);

var scriptNodes = node.getElementsByTagName('script');

var len = scriptNodes.length;

var styleNodes = node.getElementsByTagName('style');

var len1 = scriptNodes.length;

for(var i=0; i

var scriptNode = document.createElement('script');

if(scriptNodes[0].getAttribute('src')!='' && scriptNodes[0].getAttribute('src')!=null){

scriptNode.setAttribute('src',scriptNodes[0].getAttribute('src'));

}else{

scriptNode.innerHTML = scriptNodes[0].innerHTML;

}

document.body.appendChild(scriptNode);

node.removeChild(scriptNodes[0]);

}

for(var i=0; i

var styleNode = document.createElement('style');

if(styleNodes[0].getAttribute('src')!='' && styleNodes[0].getAttribute('src')!=null){

styleNode.setAttribute('src',styleNodes[0].getAttribute('src'));

}else{

styleNode.innerHTML = styleNodes[0].innerHTML;

}

document.head.appendChild(styleNode);

node.removeChild(styleNodes[0]);

}

}

var xhr = null;

if(window.XMLHttpRequest){

xhr = new XMLHttpRequest();

}else if(window.ActiveXObject){

xhr = new ActiveXObject("Microsoft.XMLHTTP")

}

xhr.onreadystatechange = function(){

if(xhr.readyState == 4){

if(xhr.status == 200){

callback(xhr.responseText);

}

}

}

xhr.open('get', 'main.html');

xhr.send(null);