diff --git a/js/include.js b/js/include.js index 676f5e5f..4de46395 100644 --- a/js/include.js +++ b/js/include.js @@ -1,21 +1,47 @@ +// function includeHTML() { +// var elements = document.getElementsByTagName("include"); +// for (var i = 0; i < elements.length; i++) { +// var element = elements[i]; +// var file = element.getAttribute("src"); +// if (file) { +// (function(element) { // 创建一个函数作用域,以便保存每个元素的引用 +// var xhttp = new XMLHttpRequest(); +// xhttp.onreadystatechange = function() { +// if (this.readyState === 4 && this.status === 200) { +// element.innerHTML = this.responseText; +// } +// }; +// xhttp.open("GET", file, true); +// xhttp.send(); +// })(element); +// } +// } +// } + +// document.addEventListener("DOMContentLoaded", includeHTML); function includeHTML() { var elements = document.getElementsByTagName("include"); for (var i = 0; i < elements.length; i++) { var element = elements[i]; var file = element.getAttribute("src"); if (file) { - (function(element) { // 创建一个函数作用域,以便保存每个元素的引用 - var xhttp = new XMLHttpRequest(); - xhttp.onreadystatechange = function() { - if (this.readyState === 4 && this.status === 200) { - element.innerHTML = this.responseText; + var xhttp = new XMLHttpRequest(); + xhttp.onreadystatechange = function() { + if (this.readyState === 4 && this.status === 200) { + element.innerHTML = this.responseText; + // 执行加载的JavaScript代码 + var scripts = element.getElementsByTagName("script"); + for (var j = 0; j < scripts.length; j++) { + var script = document.createElement("script"); + script.innerHTML = scripts[j].innerHTML; + document.body.appendChild(script); } - }; - xhttp.open("GET", file, true); - xhttp.send(); - })(element); + } + }; + xhttp.open("GET", file, true); + xhttp.send(); } } } -document.addEventListener("DOMContentLoaded", includeHTML); +document.addEventListener("DOMContentLoaded", includeHTML); \ No newline at end of file