위쪽 검은 색 막대의 '더보기'다음에 텍스트를 추가하는 Chrome 확장 프로그램 (콘텐츠 스크립트)을 만들고 있습니다. Gmail. 이러한 요소는 canvas_frame
iframe에 캡슐화되어 있습니다. Chrome 확장 프로그램에서 Gmail의 iframe에 액세스 할 때 정의되지 않은 오류가 발생하지만 개발자 콘솔에서는 표시되지 않습니다.
내가 함께 이러한 요소에 액세스하려고
는 :document.getElementById('canvas_frame').contentWindow.document.getElementById('gbz').innerHTML = scr;
나는 Uncaught TypeError: Cannot read property 'document' of undefined
를 얻을. 하지만 코드를 Chrome 개발자 콘솔에 직접 입력하면 작동합니다. 왜 이런거야? 크롬 확장에서 해당 요소에 액세스하고 수정하려면 어떻게해야합니까?
저는 새로운 자바 스크립트이므로 뭔가 분명히 빠져 있습니다. 감사.
그 결과는 다음과 같습니다. (http://i.minus.com/iGroGNhM1GA9v.png) – user1267383
id가 canvas_frame 인 iframe이 페이지에 있는지 확인하십시오. – mattnull
그럴 수 있습니다. www.mail.google.com에서이 광고를 게재하고 있습니다. 사실,이 코드는 Chrome Dev 콘솔에 입력하면 작동하지만 내 확장 프로그램에서 실행중인 경우 작동하지 않습니다. – user1267383