2010-12-22 5 views
9

현재 대부분의 브라우저에는 탭 기능이 있으므로 탭 인덱스를 가져 오는 방법이 있습니까?브라우저 탭 가져 오기/Id

그래서 탭 1에는 www.google.com이 열렸고 탭 2에는 www.google.com이 열렸습니다. 탭 인덱스가 무엇인지 식별 ​​할 수있는 방법이 있습니까?

의사 코드 :

if($tab == 2) { 
    alert "Tab 2 is active\n"; 
} 

if($tab == 1) { 
    alert "Please use Tab 2 as this is Tab 1\n"; 
} 

나는 웹 페이지 자체의 탭 인덱스, 한숨과 관련이 탭에 대한 검색 모든 ...

+0

입니까? – Boldewyn

+0

다음은 유스 케이스를 수행 할 수 있는지에 대한 질문입니다. 나는 질문을했고 그 주제에 대해 아무 것도 보지 못했다. 전혀 해결 될 수 없다면 생각 나게했다. 서버 측에서는 각 탭이 페이지로드 요청으로 취급되므로 개별 탭을 식별 할 수 있다고 생각하지 않지만 자바 스크립트가 브라우저에서이 정보에 액세스 할 수 있다고 생각했습니다. –

+1

개인적으로 웹 사이트와 팝업을 입력하면 "탭 1 활성"또는 같은 종류의 항목이 표시됩니다. 나는 그런 것들이 고칠 때까지 브라우저를 바꿀 것이고, 내가 사용하고있는 웹 사이트를 보이콧 할 것이다. : D – Dan

답변

6

엄밀히 말하면. TABS는 최종 사용자의 컴퓨터에 있습니다. PHP는 서버에서 작동합니다. PHP는 최종 사용자의 컴퓨터가 무엇을하고 있는지 알지 못합니다. 최종 사용자가 PHP를 사용하는 페이지를 제공합니다.

Google은 JavaScript와 쿠키로이를 수행합니다. 열린 페이지의 모든 인스턴스에 대해 쿠키 카운터를 증가시킵니다. 카운터가 1보다 큰 경우 AJAX를 사용하여 오류 메시지를 표시하십시오. 또한 쿠키 또는 JavaScript가 비활성화 된 경우 페이지가 작동하지 못하게하십시오.

jQuery를 살펴보십시오.

+0

고마워요, PHP는 서버 측 언어입니다.하지만 환경 변수가 USER_AGENT와 같이 설정되어 일부 실마리를 줄 수 있다고 생각했습니다. 나는 쿠키 페이지 카운터 아이디어를 시도해야합니다, 감사합니다 Logged –

0
PHP에서

같은 재미 : 확실히 - 그것의 실행 것 cleints 브라우저에 액세스 할 수없는 서버.

아마도 javascript를 사용하는 솔루션이 있습니다 (하지만이 사실을 전혀 들어 본 적이 없으며 적어도 브라우저 간 솔루션으로는 가능하지 않음).

당신이 (심지어 하나 있다면) 플래시, 실버 라이트 또는 자바 플러그인 같은 다른 클라이언트 측 언어를 사용하는 것이 가장 좋은 기회라고 생각합니다. 자바 스크립트보다 훨씬 많은 일을 할 수 있습니다. 죄송합니다. 나는 이들 중 어느 것이 더 많은 정보 나 힌트를 줄 정도로 좋은지 모르겠습니다.

+0

고마워, 나는 이것이 클라이언트 측 언어에서도 가능하지 않을 수도 있다는 것에 동의한다. 누군가가 내 머리 속에 붙어있는 질문을 물어 보았습니다. 감사합니다. –

0

절대 탭 인덱스를 결정하는 한 Javascript로 수행 할 방법이 없습니다. 이름으로 창을 식별 할 수 있지만 다른 것은 식별 할 수 없습니다.

동일한 웹 페이지가 포함 된 두 개의 탭이있는 예에서 서로를 인식하여 고유하게 식별 할 수 있어야합니다. 쿠키를 사용해야합니다. 기본적으로 페이지가로드되면 현재로드 된 페이지의 다른 인스턴스에 대해 알려주는 쿠키를 확인하고 적절하게 결정합니다.

이 시나리오에서 onload 핸들러는 쿠키를 확인하고로드 페이지를 등록합니다. 또한 언로드되는 페이지와 관련된 쿠키를 설정 해제하려면 onunload 핸들러가 필요합니다.

쿠키를 사용하여 자바 스크립트로 창간에 통신하는 방법에 대한 자세한 내용은 Javascript communication between browser tabs/windows을 참조하십시오.

0

더 이상이 친구에게 시간을 낭비하지 마십시오. 브라우저 내부의 모든 웹 페이지는 보안 제한으로 인해 이러한 종류의 정보를 얻을 수 없기 때문에 가능하지 않습니다.

의견에 다른 사람들이 제안한 것처럼 접근 방식을 찾아보십시오.

0

해당 정보를 지원하는 전역 변수가없는 것 같습니다. 하지만 파이어 폭스 나 구글 크롬 같은 영리한 브라우저가 뭔가를 지원할지도 모른다. 나는 그물에 빠른 수색을하고 나는 이것들을 가지고왔다.

먼저 Mozilla Tab Helper이 Mozilla에서 작동하는지 확인하십시오. 그러나 이것은 크로스 브라우저 솔루션이 될 수 없음을 기억하십시오. 또한, 크로스 브라우저 솔루션이 없다고 생각하고 있습니다.

둘째로, 자신의 용도로 이것을 사용하려면 유용 할 수 있습니다. 테스트하지 않습니다. 이것은 애드온입니다. 여기에 (브라우저 애드온의 외부) 등의 정보에 대한 사용 사례가 될 것입니다 무엇 Open Tab Count Mozilla Addon

Open Tab Preview

관련 문제