我使用以下代码:
$(function () {
$('#result').load('_shared.html body > :not(main)');
});
但<div id="result" />
元素仍为空。
当我打开_shared.html
并在控制台中运行相同的选择器时:
$('body > :not(main)').length
我得到3
作为结果。
在Firefox和Chrome中都没有控制台错误。
我正在使用本地文件(直接来自文件系统,没有任何网络服务器),但这似乎不是问题,因为我使用--allow-file-access-from-files
命令行选项运行Chrome,并且Chrome会将网络请求报告给_shared.html
。
我做错了什么,我该如何解决这个问题?
更新
使用Kevin B的回答和评论,我使用以下内容:
$('#result').load('_shared.html > :not(main, title, link, meta)');
仅插入body
的直接子元素,并排除head
中定义的元素。
答案 0 :(得分:0)
您的选择器应为:not(.main)
,因为返回的html中不存在jQuery body
。
$('#result').load('_shared.html :not(main)');