FF56의 greasemonkey 3.17과 Vivaldi의 tampermonkey에이 문제가 있습니다. Google을 통해이 문제에 관해서는 아무 것도 찾을 수 없습니다.userscript가 둘 이상의 탭에로드 될 때 자체를 차단합니다
스크립트 예 :
// ==UserScript==
// @name stackoverflow.com
// @namespace siod87gbnwf87rnsfdkn
// @include https://stackoverflow.com/*
// @version 1
// ==/UserScript==
alert(1);
alert(2);
당신이 매우 간단하고 하나의 메시지 상자를 제공해야하고, OK 두 번째를 클릭하면 볼 수 있듯이. 이것은 기본적으로하지만 지금은 문제에 대한 잘 작동 :
이동
를 사용하여 마우스 가운데 버튼을 두 개의 다른 후 직접 두 번 새 탭에 질문을 열 유래 stackoverflow.com 할 수 있도록 두 번째 탭 다른 하나는 여전히 어떻게됩니까
를로드하는 동안 두 탭이 예상대로 첫 번째 탭에서 상자에서 확인을 클릭하면 확인을 클릭 할 때까지 popupbox가 "1"하지만 스크립트가 일시 중지됩니다 보여줄 것 열립니다 두 번째 탭의 팝업 상자. 두 번째 탭에서 확인을 두 번 클릭하면 첫 번째 탭의 alert
이 트리거됩니다.
왜 스크립트가 서로 독립적으로 실행되지 않습니까? 이것은 alert
과 아무 관련이 없습니다.이 스크립트는 좀 더 복잡한 스크립트에서이 문제가 있었지만 내 문제를 보여주기 위해 동일한 경고가 작동합니다.
예 경고는 예입니다. 내 실제 스크립트에는 여러 링크를 빠르게 연 다음 문제가 발생하여 실행되지 않습니다. 하지만 greasemonkey가 새로 열린 각 탭에서 스크립트를 실행하는지 확인하기 위해 console.log()를 사용해 보았습니다. 그래서 오류는 내 실제 스크립트의 어딘가에 있어야합니다. 비록 내가 블로킹을 사용하지 않는다고 생각합니다. 나는 더보아야 할 것이다. 이 예제가 실행되지 않는 이유에 대해 문제를 해결해 주셔서 감사합니다. – user136036