본문의 innerHTML (예, body 태그의 모든 내용)을 가져 와서 모든 아랍어 숫자 (123)를 아랍어 - 인도어로 변환하는 스크립트가 있습니다. 숫자 (123)를 변경하고 innerHTML을 변경된 것으로 대체합니다. 이제 구문 분석기가 완벽하게 작동하여 사용자가 페이지에서 볼 수있는 숫자 만 변경하고 태그 속성의 숫자는 피하고 스크립트, 스타일, noscript와 같은 '민감한'태그 안의 내용은 그대로 유지합니다 (나가 일하고있는 약간 꼬임), 나가 그것을에 원하는처럼! (이 방법으로 크롬 확장 프로그램에서 실행 중이며 onLoad 이벤트가 발생하면 스크립트가 실행됩니다.)스크립트를 보존하더라도 html로 자바 스크립트 관련 항목이 깨집니다.
하지만 어떤 이유로 인해 일부 기능이 작동하지 않습니다. 예를 들어 스택 오버플로에 대해 임의의 질문을합니다. 위쪽/아래쪽 투표 단추가 작동을 멈 춥니 다. 난 원래 및 구문 분석되지 않은 htmls 나서서 비교 :
http://www.diffchecker.com/gJE1v50f
모두가 좋아 보이는을; 사용자에게 보이는 일부 링크 (예 : 서식 지정 도움말 부분의 일부 링크)가 변경되었지만 수정하는 계획을 가지고 있지만 어쨌든 스크립트에 아무런 영향을 미치지 않으므로 숫자는 무시해도됩니다. 지금 당장. 페이지의 본문에 HTML을, 위의 설명에서 언급 한 바와 같이 답변 :
자바 스크립트가 작동하지 않는다고 말하면됩니다. 오류 메시지가 있습니까? 내 유일한 추측은 자바 스크립트가 어떻게 든 HTML의 다른 숫자 형식을 보는 것에 의존한다는 것입니다. –
글쎄, 그게 문제 야, 나는 오류 메시지가 나타나지 않는다 :/나는 또한 단지 소스로 스크립트 태그를 점검했고, 소스는 변경되지 않았고 올바른 소스로 연결된다. 귀하의 추측은 사실일지도 모릅니다! 편집 : 나는 자바 스크립트 휴식을 말하고있는 것이 아니라, 단지 _something_ 나누기라고 말하고 있습니다. 내가 그 말을 더 잘 표현해야한다고 생각합니다. –
자바 스크립트 (인라인 대신)를 통해 요소에 바인딩 된 이벤트가있는 경우 innerHTML을 설정하면 현재 DOM 노드가 삭제되어 새 노드로 바뀌기 때문에 제거됩니다. – Shmiddty