innerHTML로 삽입된 스크립트 실행
innerHTML을 사용하여 웹페이지에 스크립트를 삽입하는 것은 어려울 수 있습니다. 스크립트가 DOM에는 나타날 수 있지만 실행에 실패합니다. 이는 브라우저가 페이지에 동적으로 추가될 때 스크립트 실행을 처리하는 방식이 다르기 때문입니다.
이를 극복하기 위한 한 가지 방법은 DOM에서 스크립트 요소를 재귀적으로 검색하고 이를 실행 가능한 복제본으로 바꾸는 것입니다. 다음은 재귀 스크립트 교체 함수에 대한 단계별 설명입니다.
function nodeScriptReplace(node) {
function nodeScriptClone(node) {
function nodeScriptIs(node) {
사용 예:
삽입된 스크립트를 실행하려면 innerHTML을 사용하여 문서 본문(또는 원하는 다른 컨테이너)에서 nodeScriptReplace() 함수를 호출합니다.
nodeScriptReplace(document.getElementsByTagName("body")[0]);
이 재귀적 접근 방식을 활용하면 검색 프로세스 중에 발견된 모든 스크립트 요소가 다음으로 대체됩니다. 실행 가능한 복제본을 생성하여 innerHTML을 사용하여 삽입할 때 적절한 스크립트 실행을 보장합니다.
위 내용은 innerHTML로 삽입된 스크립트가 항상 실행되지 않는 이유는 무엇이며 어떻게 해결할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!