Jquery 为什么chrome扩展加载一个html模板而不加载它';谁的头和身体标签?
我最近遇到了一个非常奇怪的问题。我的脚本(如下所示)可以很好地从HTML模板文件加载所有内容,除了它排除头部和身体标记,并将整个内容直接放入Jquery 为什么chrome扩展加载一个html模板而不加载它';谁的头和身体标签?,jquery,google-chrome,google-chrome-extension,Jquery,Google Chrome,Google Chrome Extension,我最近遇到了一个非常奇怪的问题。我的脚本(如下所示)可以很好地从HTML模板文件加载所有内容,除了它排除头部和身体标记,并将整个内容直接放入标记中。以下是在内容脚本中运行的代码: //加载新文件并用其替换当前文件 $.get(chrome.extension.getURL('index.html'),函数(数据){ $('html').empty().append($.parseHTML(数据)); }); 我一点也不知道为什么会这样。你知道是什么导致了这个问题吗 更新: 我试着把头部和身
标记中。以下是在内容脚本中运行的代码:
//加载新文件并用其替换当前文件
$.get(chrome.extension.getURL('index.html'),函数(数据){
$('html').empty().append($.parseHTML(数据));
});
我一点也不知道为什么会这样。你知道是什么导致了这个问题吗
更新: 我试着把头部和身体分开装。。成功了!以下是更新的代码:
// load new <head> and replace current <head> with it
$.get(chrome.extension.getURL('head.html'), function(data) {
$('head').empty().append($.parseHTML(data));
});
// load new <body> and replace current <body> with it
$.get(chrome.extension.getURL('body.html'), function(data) {
$('body').empty().append($.parseHTML(data));
});
//加载新文件并用其替换当前文件
$.get(chrome.extension.getURL('head.html'),函数(数据){
$('head').empty().append($.parseHTML(数据));
});
//加载新的并用其替换当前的
$.get(chrome.extension.getURL('body.html'),函数(数据){
$('body').empty().append($.parseHTML(数据));
});
如果它不起作用就更好了。现在我更糊涂了。新代码有什么区别?JQuery在解析head和body标记时有问题吗?我希望javascript诸神不会因为我现在要说的话而生气。解析
和
标记的问题似乎潜伏在JQuery代码的深处。我不确定这是否是一个bug,但是JQuery只是忽略了提到的标记以及
标记*喘息*。下面是说明此行为的代码:
console.log($.parseHTML('
<html>
<head>
<link href="some.css">
</head>
<body>
<p>nobody cares</p>
</body>
</html>
'));
console.log($.parseHTML('
没人在乎
'));
上面代码的输出是
[link,p]
我希望javascript诸神不会因为我现在要说的话而生气。解析
和
标记的问题似乎潜伏在JQuery代码的深处。我不确定这是否是一个bug,但是JQuery只是忽略了提到的标记以及
标记*喘息*。下面是说明此行为的代码:
console.log($.parseHTML('
<html>
<head>
<link href="some.css">
</head>
<body>
<p>nobody cares</p>
</body>
</html>
'));
console.log($.parseHTML('
没人在乎
'));
上述代码的输出是[link,p]