2011-01-06 5 views
5

크롬 확장 프로그램을 쓰고 있습니다. 확장 프로그램의 일부로 확장 프로그램이 호출 된 탭의 URL을 가져 오려고합니다.크롬 탭 확장 : getCurrent 대 getSelected?

chrome.tabs.getSelected(null, function(tab) { var myTabUrl = tab.url; }); 

chrome.tabs.getCurrent(function(tab) { var myTabUrl = tab.url; }); 

: 사용의 차이점은 무엇입니까?

답변

15

getCurrent이 (가) 필요한 항목이어야합니다. getSelected은 (는) 브라우저에서 현재 선택하신 탭입니다. 그들은 다를 수 있습니다 - 어쩌면 귀하의 확장 탭에서 일부 배경 cronjob 실행, 그래서 그 탭은 현재 사용자가 선택할 수 없습니다.

좋아요. 분명히 잘못되었습니다. getCurrent은 연관된 탭 (예 : options.html)이있는 확장 프로그램의 자체 페이지에서만 사용해야하며 배경 또는 팝업 페이지에서 사용할 수 없습니다. getSelected은 브라우저에서 현재 선택된 탭입니다.

원래 질문에 관해서는 아마 그 둘 중 어느 것도 필요하지 않을 것입니다. 콘텐츠 스크립트에서 배경 페이지로 요청을 보내는 경우이 요청이 수행 된 탭은 sender 매개 변수로 전달됩니다.

+3

요즘에는 구식 답변입니다. 아래를 참조하십시오. – Aerovistae

19

방법 chrome.tabs.getSelected은 더 이상 사용되지 않습니다. 대신 chrome.tabs.query을 사용해야합니다.

더 이상 사용되지 않는 방법 chrome.tabs.getSelected의 공식 문서를 찾을 수 없습니다. 다음은 방법 chrome.tabs.query의 문서입니다.