InnerHTML은 HTML을 웹 페이지에 주입하는 편리한 방법이지만 부적절하게 사용하면 보안 위험을 초래할 수 있습니다. 사용자가 생성 한 콘텐츠를 페이지에 삽입하고 InnerHTML을 사용하는 경우 악의적 인 스크립트가 웹 페이지에 주입되는 경우 XSS (XSS) 공격에 직면 할 수 있습니다. 이를 피하려면 항상 사용자 생성 콘텐츠를 정리하거나 TextContent 또는 CreateElement와 같은 안전한 방법을 사용하십시오. function loadFragmentInToElement(fragment_url, element_id) {
var element = document.getElementById(element_id);
element.innerHTML = '<p><em>Loading ...</em></p>';
xmlhttp.open("GET", fragment_url);
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
element.innerHTML = xmlhttp.responseText;
}
}
xmlhttp.send(null);
}
innerhtml을 사용하여 여러 요소를 추가하는 방법은 무엇입니까?
각 요소에 대해 HTML 문자열을 연결하여 InnerHTML을 사용하여 여러 요소를 추가 할 수 있습니다. 예를 들어 두 단락을 추가하려면 다음을 수행 할 수 있습니다.
요소 .innerhtml = '
첫 번째 단락. '' 두 번째 단락. /> ';
이것은 요소에 두 개의 단락을 추가합니다.
innerhtml을 사용하여 SVG 요소를 삽입 할 수 있습니까?
예, InnerHTML을 사용하여 SVG 요소를 삽입 할 수 있습니다. 그러나 주목해야 할 것이 있습니다. InnerHTML을 사용할 때 SVG 네임 스페이스가 보존되지 않으므로 일부 브라우저에서 문제가 발생할 수 있습니다. 문제가있는 경우 CreateElementns 및 AppendChild 메소드를 대신 사용하는 것을 고려하십시오.
내 innerhtml이 작동하지 않는 이유는 무엇입니까?
내면은 여러 가지 이유로 작동하지 않을 수 있습니다. 일반적인 이유는 스크립트가 실행될 때 수정하려는 요소가 존재하지 않기 때문입니다. 스크립트가 페이지 본문 앞에로드 된 경우 발생할 수 있습니다. 이 문제를 해결하려면 스크립트를 바디 레이블의 맨 아래로 이동하거나 Window.Onload 기능에 코드를 감을 수 있습니다.
내 XML 문서에서 InnerHTML을 사용할 수 있습니까?
아니요, InnerHTML은 XML 문서를 지원하지 않습니다. HTML DOM의 HTMLELEMENT 인터페이스의 특성이며 XML DOM에서 사용할 수 없습니다. XML을 사용하는 경우 대신 CreateElement 및 AppendChild와 같은 방법을 사용해야합니다.
노드의 모든 자식 요소를 삭제하는 방법은 무엇입니까?
innerhtml 속성을 빈 문자열로 설정하여 노드의 모든 자식 요소를 삭제할 수 있습니다. 예를 들어:
요소의 모든 자식 요소가 삭제됩니다.
innerhtml을 사용하여 텍스트 노드에 텍스트를 삽입 할 수 있습니까?
아니요, 내부 html은 요소 노드에서만 사용할 수 있습니다. 텍스트 노드에 텍스트를 삽입하려면 대신 NoDevalue 또는 TextContent 속성을 사용해야합니다.
요소를 InnerHTML로 바꾸는 방법은 무엇입니까?
부모 요소의 innerhtml 속성을 설정하여 요소를 내부 html로 바꿀 수 있습니다. 이것은 찾으려는 요소를 포함하여 부모 요소의 모든 자식 요소를 대체합니다. 예를 들어:
parentelement.innerhtml = '<p> 새로운 단락. /> '; </p>
이것은 Parentelement의 모든 아동 요소를 새로운 단락으로 대체합니다. element.innerHTML = '';
Internet Explorer에서 InnerHTML을 사용할 수 있습니까?
예, InnerHTML은 Internet Explorer를 포함한 모든 주요 브라우저에서 지원됩니다. 그러나 브라우저는 InnerHTML의 특정 측면을 다르게 처리하므로 여러 브라우저에서 코드를 테스트하는 것이 가장 좋습니다.