【发布时间】:2015-07-22 18:36:15
【问题描述】:
可能有更简单的方法可以做到这一点,但我正在尝试一些新方法。
基本要点是,我希望在我的静态网站上每页每个人都有一个 JS 和一个 jQuery 附件。我希望能够将元素附加到身体,但头部也是如此。我的文件是:
home.html
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<script src="eco.js"></script>
</head>
eco.js
window.addEventListener("load", function() {
var ajax = new XMLHttpRequest();
ajax.onload = postdata;
ajax.open("GET", ADDRESS, true);
ajax.send();
} );
function postdata() {
var xml = jQuery.parseXML(this.responseText);
$("head").append(xml.querySelector("head").childNodes);
}
和common.xml
<head>
<link href='eco.css' type='text/css' rel='stylesheet' />
<link href='home.css' type='text/css' rel='stylesheet' />
</head>
但是,这不起作用(common.xml 被请求并成功检索)。 Chrome 开发工具显示 xml 节点也已成功附加到头部。然而该页面并未反映更改,特别是未合并 css。但是,如果我改变
var xml = jQuery.parseXML(this.responseText);
$("head").append(xml.querySelector("head").childNodes);
到
$("head").append(this.responseText);
(并修复 common.xml 以删除不需要的标签)然后页面反映更改。谁能解释这里发生了什么?
谢谢!
【问题讨论】:
标签: javascript jquery html xml dom