2016-12-27 4 views
-1
내가 조금 이상한 찾을 무언가로 실행했습니다

은 ...HTML 엔티티는 분석되지 않은 채로 남아 있습니까?</p> <pre><code><a href="Links/Audio/audio_file_1.mp3">This & That</a> </code></pre> <p>I :

링크의 모습을 오디오 파일 링크, 저자의 <table>와 웹 사이트 등이있다 & 문자가 소스 파일에 &amp;으로 작성되어 있지 않은 것이 이상하다는 것을 알았습니다. Chrome 개발자 도구 (또는 Firefox)를 사용하여 콘텐츠를 This &amp; That으로 변경하면 문자 대신 &amp; 문자열이 표시됩니다. 왜 그런가요?

이 테이블은 TableSorter을 사용하고 있습니다.이 기능은 후드 아래에서 수행 할 수 있다고 생각합니다 ...하지만 자바 스크립트를 사용하지 않도록 설정하더라도 원시 & 문자가 여전히 표시되어 있으므로 보이지 않습니다. 범죄자.

+3

dev 도구에 '&'을 입력하고 페이지에 '&'이 표시되면 노드 값을 편집하고있는 것입니다. 노드 HTML을 편집해야합니다. –

+1

dev 도구에서 html 또는 텍스트로 편집 했습니까?큰 차이 – epascarello

답변

2

HTML 엔티티는 분석되지 않은 상태로 유지되는 경우는 언제입니까?

아니요. HTML은 읽히는 동안 파싱됩니다. 이것은 자바 스크립트와 완전히 독립적입니다.

& 문자가 소스 파일에 &으로 쓰여져있는 것이 이상하다는 것을 발견했습니다.

사실, 그것은해야하지만, 그것은 브라우저가 정상적으로 잘못된 마크 업을 처리하기 때문입니다 방식으로 작동, 특히 측면은 이제 사양으로 인코딩되는 사실 : A와 촬영하지 ambiguous입니다 앰퍼샌드 리터럴 앰퍼샌드.

내가 크롬 개발 도구 (또는 Firefox)를 사용하고 This &amp; That의 내용을 변경하는 경우, 문자열 &amp; 대신 단지 & 성격, 볼 수 있습니다. 왜 그런가요? Chrome의 DevTools로 유사한, 유효한 형태가 아닌 실제 소스 파일에 표현 라이브 DOM을보고하고,를 통해 DOM을 볼 때

은 자연스럽게 브라우저는 &&amp;로 (엔티티가해야을 보여줍니다 소스 파일에 있음).

1

이것은 자바 스크립트와 독립적입니다. 또한 그 문자의 ASCII 12 월 조항입니다 &#38; : &amp;

&는 같은 HTML 번호가 있습니다. 당신은 여기에서 좀 걸릴 수 있습니다 : http://www.ascii.cl/htmlcodes.htm

그래서 난 당신의 코드에 문제가있는 것 같다, 그들은 당신의 화면에서 동일한 기호 (&)으로 간주되어야한다.

+0

HTML 엔터티의 숫자는 유니 코드 코드 포인트입니다. ASCII 코드는 100 문자 만 인코딩 할 수 있기 때문에 거의 사용되지 않을 것입니다. 대부분은 HTML 엔터티로 표현할 필요가 없습니다. –