요소를 제거할 때 JavaScript 를 제공하는 표준 부모 먼저 이동해야 합니다.
var element = document.getElementById("element-id");
element.parentNode.removeChild(element);
먼저 상위 노드입니다 거칠 필요 없다는 것은 이런 것 좀 홀수입니다 다는일은, JavaScript 는?
Native DOM 기능을 증대시키는 것으로 알고 있지만, 이는 항상 최상의 또는 isn& # 39, t 는 가장 인기 있는 솔루션이므로 과태료를 최신 브라우저.
Element.prototype.remove = function() {
this.parentElement.removeChild(this);
}
NodeList.prototype.remove = HTMLCollection.prototype.remove = function() {
for(var i = this.length - 1; i >= 0; i--) {
if(this[i] && this[i].parentElement) {
this[i].parentElement.removeChild(this[i]);
}
}
}
이런 요소를 제거할 수 있습니다 다음
document.getElementById("my-element").remove();
또는
document.getElementsByClassName("my-elements").remove();
Note:* netwin doesn& # 39, 이하 IE 7 의 빗나갔다. 기사 에서 DOM 연장에 대한 자세한 정보는 읽습니다.
편집할지 *: 2019년, 'my answer 검토하든 노드그레모프 도래 ()' 이 구조 및 환경 변수를 다음과 같이 사용할 수 있습니다 (폴리필 없이 그들위에):
document.getElementById("my-element").remove();
또는
[...document.getElementsByClassName("my-elements")].map(n => n && n.remove());
이러한 기능을 사용할 수 있는 모든 최신 브라우저 (필터링되지 IE). 대한 자세한 내용은 매든.
십자브라우저 및 IE > = 11:
document.getElementById("element-id").outerHTML = "";
[# 39 의 어떤 It& DOM 汲摹窍妨绰] [1]. 페이지를 검색하는 " remove"; 또는 " delete"; 및 [레모베차일드] (https://developer.mozilla.org/en-US/docs/Web/API/Node/removeChild) 가 유일하게 절감뿐만 노드입니다.
[1]: # 메서드을 https://developer.mozilla.org/en-us/docs/web/api/element " 게코 DOM element methods" 참조 -;;
Dom 은 트리로 구성된 노드입니다, 여기서 각 노드는 가치, 목록과 함께 참조에서는 다시 하위 노드입니다. 그래서 (요소) '' 엘레망스파레 스노드그레모베차일드 정확히요 무슨일인거죠 내부적으로 비슷합니다. 먼저 가서 있는 상위 노드입니다 관심용 참조입니다 분리하십시오 하위 노드입니다.
Vmware. DOM4 제공되며, 보조 기능을 못하며창조된 마찬가지입니다. ['엘레멘스콜리모프 ()'] (https://developer.mozilla.org/en/docs/Web/API/ChildNode.remove). [작동됨 87%) 이 브라우저] [1] (2016년 기준) 로 하는 것이 아니라, 기체 구성, Internet Explorer, IE, title = " < 11" > /abbr> 11<;). 구형 브라우저를 지원해야 하는 경우에는 수 있습니다.
[질문] - 제거 요소를 통해 상위 노드입니다 같이 (https://www.google.com/search? q = What% 20is% 20the% 20answer% 20to% 20the% 20ultimate% 20question% 20of% 20life 20the% 20universe 20and% 20everything% 3f, %, %)
[1]: http://caniuse.com/ # 검색 = 분리하십시오
한 제거하기 위한 요소:
var elem = document.getElementById("yourid");
elem.parentElement.removeChild(elem);
예를 들어 있는 모든 요소를 제거하기 위한 특정 클래스 이름:
var list = document.getElementsByClassName("yourclassname");
for(var i = list.length - 1; 0 <= i; i--)
if(list[i] && list[i].parentElement)
list[i].parentElement.removeChild(list[i]);
이 방법 () '에서' 힐데노드그레모프 절감뿐만 객체에는 나무를요 에 속해 있습니다.
https://developer.mozilla.org/en-US/docs/Web/API/ChildNode/remove
이것은 바이올린 보여 주는 도쿠망스게테레멘트베이드 (& # 39, my-id& # 39;) 그레모프 문의할 수 있습니다 ' ()'
>. 먼저 상위 노드입니다 거칠 필요 없다는 것은 이런 것 좀 홀수입니다 다는일은, JavaScript 는?
함수 이름 () 는 '레모베차일드', 그리고 가능성은 얼마나 there& # 39 의 하위 분리하십시오 때 부모가 없는? )
반면 정보기술 (it) 을 호출할 수 없는 경우 항상 볼 수 있습니다. '도우미' 에 불과한 엘레망스파렌트노데 상위 노드입니다 얻기 위해 주어진 노드입니다. 이미 알고 있는 경우 이를 사용하여, 다음과 같은 상위 노드입니다 됩니다
예:
// Removing a specified element when knowing its parent node
var d = document.getElementById("top");
var d_nested = document.getElementById("nested");
var throwawayNode = d.removeChild(d_nested);
https://developer.mozilla.org/en-US/docs/Web/API/Node/removeChild
=
좀 더 추가할 수 있습니다.
일부 답을 사용하지 않고 있다는 지적이 발렌티노드그레모베차일드 (하위) ',', ' (),' 에르메스레모프 사용할 수 있습니다. 그러나, 두 함수, it& 사이에 차이가 나는 것을 # 39 의 언급되지 않은 이들 질문에 대한 답변을.
레모베차일드 사용할 경우 () ',' it 반환되므로 대한 참조입니다 재거됨 노드입니다.
var removedChild = element.parentNode.removeChild(element);
console.log(removedChild); //will print the removed child.
그러나 에르메스레모프 (), ',' t it won& # 39 를 사용하는 경우, 당신이 반품하십시오 참조입니다.
var el = document.getElementById('Example');
var removedChild = el.remove(); //undefined
https://developer.mozilla.org/en-US/docs/Web/API/ChildNode/remove
이 비헤이비어를 대역에서 관측될 수 크롬, FF. I believe It& # 39 의 가치가 잘:)
내 질문에 답할 수 있는 몇 가지 가치를 희망을 자도으로 및 도움이 됩니다!!
_limbo = document.createElement('div');
function deleteElement(ele){
_limbo.appendChild(ele);
_limbo.removeChild(ele);
}
Dom 레벨 4 에 따르면 현재 버전을 개발, 사양, 이는 몇 가지 새로운 돌연변이 메서드을 편리하게 사용할 수 있습니다. '덮어쓰기/추가 ()', 'prepend ()', '전 ()', '후 ()', '복귀시킴 ()' 및 '제거 ()'.
https://catalin.red/removing-an-element-with-plain-javascript-remove-method/
>. 먼저 상위 노드입니다 약어입니다 다는일은, 홀수입니다 거칠 필요 없다는 것 같다 >. javascript 는 이 같은 이유는?
이럴: 그 이유는 동일합니까 I& # 39, ve seen 다른 환경에서: 작업 수행 중인 따라 link" "; 무언가를. # 39, 그 때, re 링크됨 you& 삭제하시겠습니까 can& 있습니다 t # 39 거잖나.
다 같은 가공할 진단트리는. 가장 가까운 쪽에 앉아 나무를요 감소시키면서 또는 결과를 가져올 수 있다는 것이다. 불행한 (단, 재미있는).
실제로 이 번호요 FireFox 비롯됩니다. 한 번, IE 는 팩과도 요소의 제거 및 대한 앞두고 직접 허용했다.
하지만 이것은 단지 내 가정, I believe 는 이처럼 통해 하위여야 제거해야 합니다 상위입니다 문제로 인해 운행에서어떠한 FireFox 처리됩니까 참조.
그 후 즉시 하리 카리 커밋하려면 전화하시기 경우 객체를 직접 들고 죽는다는 아직 참조하는 것이다. 이 몇 가지 버그를 불쾌한 만들 수 있습니다. 하지만 이 같은 결함이 있는 제외시키려면, 제거, 또는 단순히 나타나는 것은 참조입니다 유효함 메모리 누수가.
그랬을 때 이 문제를 해결할 수 있는 요소를 제거하는 것을 통해 당시 모 이유는열 요소는 떠나 이제 단순히 참조입니다 상위입니다 속설이 있다. 오해, 그리고 이 모든 것을 막을 경우, 예를 들어 한 트리입니다 노드입니다 폐쇄되는 노드별) # 39, & # 39 zip-up& 것이다. 대답하도다 아주 잘.
버그 수정 가능한 것이 아니라 다른 많은 것을 쉽게 할 수 있는 것은 아마도 이 웹 프로그래밍, 서둘러 릴리스에는 주도하고 있습니다. 다음 버전 및 그 시간에 의해 중심으로 바꾸는 것으로, 이로 인해 깨는 데 충분한 명이 코드 a bunch of centera 를 사용하고 있습니다.
다시, 이 모든 것이 나의 고객은 단순히.
그러나 그날 나는한다 고대하고 전체 웹 프로그래밍 마지막으로 얻을 수 있고, 누구나 재생이 시작되는 봄 청소, 이러한 모든 이상한 이드리우시 크라시스 프레젠테이션이든 복구하였습니다 거의 동일한 규칙으로.
아마 내 로봇이잖아 시종 피소 다음날 다시 나를 위해 임금.
내가 직접 사용할 수 없으며, 오직 분리 노드입니다 뭐로부터요 이해, Firefox 에서 Internet Explorer. 그래서, 파이어폭스, 지원할 수 있는 최대 상위입니다 # 39 의 하위 it& 제거하시겠습니까 검색하기를 합니다.
// http://javascript.crockford.com/memory/leak.html
// cleans dom element to prevent memory leaks
function domPurge(d) {
var a = d.attributes, i, l, n;
if (a) {
for (i = a.length - 1; i >= 0; i -= 1) {
n = a[i].name;
if (typeof d[n] === 'function') {
d[n] = null;
}
}
}
a = d.childNodes;
if (a) {
l = a.length;
for (i = 0; i < l; i += 1) {
domPurge(d.childNodes[i]);
}
}
}
function domRemove(id) {
var elem = document.getElementById(id);
domPurge(elem);
return elem.parentNode.removeChild(elem);
}
This is the best 함수은 요소를 제거하는 데 없이 스크립트 오류:
function Remove(EId)
{
return(EObj=document.getElementById(EId))?EObj.parentNode.removeChild(EObj):false;
}
'레오비 참고 = 도쿠망스게테레멘트베이드 (EId)'.
등호 중 하나가 이 아닌 '='.
이 경우, 그렇지 않으면 다음 함수은 EId '요소' 가 아닌 '오류' 거짓값 되돌려줍니다 절감뿐만.