我想使用其ID
从dom中删除元素HTML
<div id="no-js">
Sorry for the inconvenience<br/>
Your browser does not support javascript or it must be disabled.<br/>
To access the features of our website<br/><br/>
Enable your javascript or upgrade to the browser that supports javascript.
</div>
的jQuery
var x = $("#no-js");
console.log(x.html());
x.remove(); // does not remove the element from dom why?
console.log(x.html()); // it displays html content inside it
console.log(x.length); // results 1
x.empty(); // removes the child elements, working as expected
console.log(x.html()); // html content is empty
console.log(x.length); // length is 1
.remove()
似乎没有按预期工作?
这是小提琴
http://jsfiddle.net/QGsza/14/
答案 0 :(得分:4)
.remove()
从dom中删除了该元素,但变量x
仍保留对它的引用,这是x.length
返回1的原因
如果再次测试console.log($("#no-js").length)
,它将触发新的dom搜索并且该元素已被删除时将为0
演示:Fiddle
答案 1 :(得分:0)
你有<div id="no-js">
所以,
将此var x = $("#div_no_js");
替换为此var x = $("#no_js");
答案 2 :(得分:0)
您的选择器错误,请更改为$("#no_js")
。有关更多信息,请参阅jQuery API
答案 3 :(得分:0)
就像我曾尝试过你的小提琴而且它正在运作
var x = $("#no-js").html();
x.remove();