1

jquery-ui 대화 상자를 사용하고 있는데, 필자는 fancybox 또는 colorbox 등으로 전환 할 수 있습니다. 내 Chrome 플러그인 스크립트가 페이지로드시이 대화 상자를 엽니 다. jquery-ui에서 상자가 연결된 div가 현재 페이지의 본문으로 이동합니다. 사용자가 페이지의 링크를 클릭하면 새 페이지가로드 된 후 다시 열지 않고 해당 상자를 열어두고 싶습니다. 마치 실제 페이지보다 브라우저와 더 관련이있는 것처럼 말입니다. 이것은 프레임을 구성하고 상자를 다른 프레임에 포함 시키면 가능할 수 있지만 많은 사이트에서 작동하는지는 의문입니다. 어떤 아이디어?URL 변경시에도 jquery 대화 상자를 열어 두는 Chrome 플러그인 내용 스크립트

답변

0

나는 스스로에게 대답 할 것입니다. 콘텐츠 스크립트로 작성된 div/iframe을 유지할 수있는 자격을 얻은 유일한 방법은 패널이라는 Chrome의 실험실 기능입니다. 지금은이 기능

크롬을 통해 활성화해야합니다 : // 플래그 페이지 :

맥, 윈도우, 리눅스, 크롬 OS는 브라우저 프레임의 열고 외부 패널 창을 사용하도록 설정 패널을 사용합니다. 패널을 열려고 시도하면 활성화되지 않은 경우 팝업이 대신 표시됩니다. 패널은 개발자 및 카나리아 채널에서 항상 활성화됩니다. 여기서 볼 수 있듯이

"패널"창 유형으로 지정할 수 있습니다 패널 실험 기능은 크롬에서 사용할 수없는 경우 http://code.google.com/chrome/extensions/windows.html#type-Window 새 창 팝업이 기본적으로 사용됩니다.

1

UI 대화 상자를 열린 상태로 유지하는 유일한 방법은 새 페이지가로드되는 iFrame을 사용하거나 (iFrame을 사용하여 특정 페이지를로드하여) iFrame 또는 콘텐츠 div의 UI 대화 상자 div 외부 유지하는 동안 jQuery load() (또는 ajax() 또는 post() 또는 get())를 사용합니다.

+0

그래, 나는 그것을 시도 할 수있다, 나는 단지 그것이 너무 많은 사이트의 스타일과 자바 스크립트를 깨뜨릴 것이라고 생각했다. 나는 그것을 줄 것이다. –

+0

자신의 사이트가 아닌가 ...? 이 사이트를 다른 사이트에서 어떻게 사용할 계획인지 이해할 수 없습니까? 교차 도메인을 iFrame에로드 하시겠습니까? 하지만 jQuery load()를 사용하여 크로스 도메인을로드 할 수는 없습니다. 그러나 두 기술을 다른 스크립트 및 플러그인과 결합하더라도 영향을받지 않아야합니다. – Stefan

+0

jQuery load()를 사용하여 div에 내용을로드하는 경우 내용은 doctype과 헤더 및 스타일 시트가있는 전체 HTML 페이지가 아니어야합니다.하지만 iFrame을 사용하는 경우에는 해당 내용이 있어야합니다. – Stefan