有没有办法提取没有特定子元素的body元素?
例如,如果我有:
<body>
<div id="id1" class="class1" />
<div id="id2" class="class2" />
</body>
,我需要提取的是:
<body>
<div id="id1" class="class1" />
</body>
实际上,我打算使用html2canvas库从HTML代码中创建canvas元素,但我不想在canvas元素中包含所有正文子元素。
答案 0 :(得分:2)
如果你检索一个父元素,那么你也必须带走它的所有子元素。在这种情况下可能的解决方法是选择body
,克隆它,然后删除不需要的子元素,如下所示:
var $bodyClone = $('body').clone();
$bodyClone.find('#id2').remove();
// use $bodyClone as needed here...
答案 1 :(得分:1)
$('body').not("#id2").html();
or
$('body').not(".class2").html();
这是多个
$( "div" ).not( ".someclass, #someid,.class").html()
希望它会有所帮助
答案 2 :(得分:0)
您可以使用document.getElementById(id)
获取一个元素
或getElementsByClassName(class)
然后过滤返回的数组
使用更好的ID或类可以帮助您完全避免过滤,只需将所有画布分配给一个类并替换它们。