특정 도메인에서 팝업을 표시하는 Chrome 확장 프로그램을 개발 중입니다. 사용자가 웹 페이지를 방문하거나 타겟팅 된 도메인 중 하나를 사용하여 현재 페이지를 새로 고침 할 때마다 팝업이 표시되어야합니다.사용자가 페이지를 새로 고침 할 때 감지합니다.
가onTabUpdate
함수는 페이지가로드 될 때마다 실행 얻을
chrome.runtime.onInstalled.addListener(function() {
chrome.tabs.onUpdated.addListener(onTabUpdate);
});
(내가 도메인 테스트와 같은 불필요한 코드를 삭제 한) : 현재 탭이 업데이트 될 때 그래서 처음 난 리스너를 퍼트 한
function onTabUpdate(tabId, info, tab) {
//if page is refreshed
if (info.url === undefined) {
if (info.status == 'loading') {
console.log('Refresh happened for tab: ' + tabId)
tabsLoaded = {};
loadPopup(tabId);
}
}
//if page is first time loaded
if (tab.status !== 'complete') {
return;
} else {
console.log("page loaded ");
loadPopup(tabId);
}}
코드가 잘 실행되고 페이지가로드되거나 새로 고쳐질 때 감지합니다. 문제는 팝업을 표시하고 사용자가 닫을 때 새로 고침 이벤트가 트리거되고 팝업이 다시 표시된다는 것입니다. Chrome은 DOM을 다시 그리며 페이지를 새로 고침하기 때문에 생각합니다. 그래서 나는 사용자가 자신을 크롬이 아닌 페이지를 새로 고침 할 때 감지하는 방법을 찾고 있습니다.