2

Chrome extension을 개발했습니다. Chrome 39에서 제대로 작동하지만, Opera 개발자 24의 오류는 우분투 14.04 (64 비트)입니다. 그것은 완벽한 Tab 객체를 반환 크롬에서chrome.tabs.query의 결과가 없습니다.

chrome.tabs.query(
    { active: true, highlighted: true, currentWindow: true }, 
    function(thisTab) { 
    console.log(thisTab); 
    } 
); 

:

Error in response to tabs.query: TypeError: Cannot read property 'id' of undefined at HTMLLIElement.click

그래서 난 둘 브라우저 콘솔에 chrome.tabs.query을 테스트했다.

그러나 Opera에서는 빈 배열 []을 반환합니다.

screenshots

는 왜 이런 일이 일어나고?

+0

누구나 "브라우저에서'console.log' 결과가 나오기 직전에 콘솔에서'undefined'를 표시 할 수있는 행동을 알 수 있습니다." – diEcho

+1

첫 번째'undefined'는'chrome.tabs.query'의 반환 값입니다 – Xan

답변

3

오페라에는 이미 강조 표시된 탭의 개념이 포함되어 있지 않은 것으로 보입니다.이 탭은 Chrome에서 이미 잘 보이지 않습니다.

어쨌든 검색어가 너무 많습니다. Chrome에서는 활성 탭을 강조 표시 할 수 없습니다.

따라서 두 쿼리 모두에서 작동하는 쿼리의 경우 {active: true, currentWindow: true}을 사용하십시오.

+0

도움을 주셔서 다시 한번 감사드립니다. 콘솔은 알 수없는 오류 대신 적절한 오류 세부 정보를 제공해야합니다. 그렇지 않니? – diEcho

+1

아니요. 단지 'highlighted : true'가있는 탭이 없으므로 필터가 빈 결과를 반환합니다. 속성 자체는 이전 버전과의 호환성을 위해 유효하므로 명시 적 오류는 없습니다. – Xan

+0

** chrome.tabs.query ({active : true, currentWindow : true} **는 항상 크롬에서 0 길이 배열을 반환합니다. 어떤 아이디어입니까? – SuperUberDuper