Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 为什么chrome扩展加载一个html模板而不加载它';谁的头和身体标签?_Jquery_Google Chrome_Google Chrome Extension - Fatal编程技术网

Jquery 为什么chrome扩展加载一个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(数据)); }); 我一点也不知道为什么会这样。你知道是什么导致了这个问题吗 更新: 我试着把头部和身

我最近遇到了一个非常奇怪的问题。我的脚本(如下所示)可以很好地从HTML模板文件加载所有内容,除了它排除头部和身体标记,并将整个内容直接放入
标记中。以下是在内容脚本中运行的代码:

//加载新文件并用其替换当前文件
$.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]