2013-08-11 3 views
1

Chrome 및 Safari에서 확장 기능을 개발했으며 iFrames와 관련된 동작이 이상하게 나타났습니다. 내가 개발 한 연장은 URL 패턴이 일치하는 모든 사이트에 콘텐츠를 스크립트를 주입 :크롬 및 사파리 확장 기능 (iFrame 포함) 간의 동작이 이상하게 다른 경우

사파리에
http://*.nationstates.net/* 

,이 확장은 그 SRC이 패턴과 일치하는 각 iFrame에로 콘텐츠 스크립트를 삽입. Chrome에서는 콘텐츠 스크립트를 iFrame이 아닌 각 웹 페이지에만 삽입합니다.

The extension code is on Github.

자신에 대한 확장을 설치합니다 http://forum.nationstates.net/viewtopic.php?f=15&t=243404

가장 쉬운 곳이 동작은 여기에보고 : 요소를 클릭 http://nationstatespostmaster.com/ 는 전국 페이지에 iframe이 열립니다. Chrome에서는 확장 프로그램이로드되지 않습니다. 사파리에서 그렇습니다.

답변

1

크롬 확장 프로그램에서 URL이 패턴과 일치하는 기본 페이지의 모든 프레임과 일치하도록 "all_frames": true을 지정할 수 있습니다. 그러나 "일치"에 지정된 패턴은 최상위 프레임 URL에만 적용됩니다. 콘텐츠 스크립트를 주 프레임에 삽입하지 않고 하위 프레임에 삽입 할 수는 없습니다.

+0

내가 이해하면 모든 URL에 내 확장 권한을 부여해야합니까? 그건 정말 끔찍한 것 같아요 ... – Afforess

+0

아니, 무시. 맞습니다. all_frames는 설명 된대로 작동합니다. 나는 그것이 사파리의 기본 동작이라는 사실에 놀랐다. http://developer.chrome.com/extensions/content_scripts.html – Afforess