Document.write() 및 스크립트 태그 분할: 수행되는 이유
document.write() 메서드를 사용하여 스크립트를 생성하는 경우 태그를 사용하면 일부 웹사이트에서는 <script> 및 </script> 여러 호출에 걸쳐 태그를 지정합니다. 이 기술은 스크립트 블록의 조기 종료를 방지하기 위해 사용됩니다.
브라우저는 일반적으로 SGML 규칙을 사용하여 HTML을 구문 분석합니다. SGML에 따르면 스크립트 블록은 <[/)와 같은 ETAGO(끝 태그 열기) 시퀀스로 끝나야 합니다. 그러나 실제로 브라우저는 적절한 위치에서만 CDATA 스크립트 블록 구문 분석을 종료합니다. 태그를 닫습니다.
따라서 전체 <script> 및 </script> 단일 document.write() 호출 내의 태그로 인해 태그 자체 내에서
이 문제를 방지하려면 태그를 분할하여 브라우저는 스크립트를 올바르게 해석하고 실행합니다. 분할은 < 및 /를 사용하면 전체 시퀀스가 작성됩니다.
이 분할 기술을 사용하는 것보다 더 나은 대안은 < 또는 & 문자를 스크립트 내에서 만들고 다음과 같이 스크립트 요소를 만듭니다.
document.write('\x3Cscript type="text/javascript" src="foo.js">\x3C/script>');이 접근 방식은 HTML5 및 XHTML 문서 모두에 적용되므로 상호 호환성을 보장하고 브라우저 혼란을 피할 수 있습니다.
위 내용은 왜 일부 웹사이트에서는 `document.write()`를 사용하여 `` 및 `` 태그를 분리합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!