Jak sprawić, by zakładka w przeglądarce Firefox fałszywie uwierzyła, że ​​nadal jest na niej skupiona?

27

W przeglądarce Firefox chciałbym przejść do innej karty, gdy reklama jest odtwarzana na bieżącej karcie, ale nieznośna funkcja zatrzyma się, gdy jej karta przestanie być aktywna.

Chciałbym oszukać reklamę, aby wierzyła, że ​​nadal jest w centrum uwagi, aby mogła kontynuować odtwarzanie, więc nie muszę czekać na jej zakończenie.

Jak sprawić, by karta Firefox fałszywie wierzyła, że ​​nadal jest na niej skupiona?

Możesz założyć, że strona korzysta z opisanych tutaj technik . window.onfocusi window.onblurprawdopodobnie są używane. Nie pamiętam, gdzie dokładnie tego potrzebowałem, kiedy zadałem pytanie; niekoniecznie jest to wykorzystywane do oszukiwania reklam. Szukam ogólnego rozwiązania.

alecail
źródło
@harrymc Tylko Javascript jest w porządku.
alecail
1
Potrzebujesz adresu URL wersji demo, aby uzyskać przydatne porady.
harrymc

Odpowiedzi:

15

Ponieważ nie podałeś szczegółów strony, oto jedno rozwiązanie, które możesz wypróbować.

  • Zainstaluj rozszerzenie Greasemonkey, aby umożliwić uruchamianie skryptów JavaScript użytkownika na wybranych stronach internetowych.
  • Zainstaluj skrypt użytkownika Zawsze w centrum uwagi.

    Podsumowanie skryptu: niektóre strony sprawdzają właściwość document.hidden i nie wyświetlają treści, dopóki strona nie jest aktywna. Ten skrypt oszuka ich, aby myśleli, że są w centrum uwagi, dzięki czemu można je wstępnie załadować na karcie i odwiedzić po zakończeniu ładowania.

  • Skonfiguruj skrypt dla określonych stron internetowych, zgodnie z potrzebami, podczas instalacji (lub później).
MK
źródło
3
Przetestowałem Aways pod kątem ostrości za pomocą tego innego skryptu, który konsoluje dzienniki, jeśli ekran jest w trakcie fokusowania (używając jquery): jsfiddle.net/ScKbk To nie działa , popraw mnie, jeśli się mylę. Obecnie testujemy na MacOS Sierra v63 Chrome
David Lopez
2

Musisz utworzyć skrypt użytkownika. Są to skrypty JavaScript, które działają w przeglądarce Firefox (lub Chrome) i manipulują konkretnymi witrynami.

Można do tego użyć narzędzi takich jak Greasemonkey ( http://www.greasespot.net ). Może być już dostępny na http://userscripts.org .

Ale jak już skomentował @harrymc, przydatny byłby przykładowy adres URL.

Chenmunka
źródło
2

Zamierzam odpowiedzieć na pytanie, myślę, że jesteś sens pytać.

To, co chcesz zrobić, to uruchomić Flash w tle, gdy stracisz koncentrację. Jest to duży problem z bezczynnymi grami opartymi na Flashu. Poniżej znajdują się niektóre fragmenty Podręcznika administracji Flash firmy Adobe, które powinny uruchamiać rzeczy, gdy nie jesteś skoncentrowany.

Lokalizacja pliku mms.cfg Zakładając domyślną instalację systemu Windows, Flash Player szuka pliku mms.cfg w następujących katalogach systemowych:

• 32-bitowy system Windows -% WINDIR% \ System32 \ Macromed \ Flash

• 64-bitowy system Windows -% WINDIR% \ SysWow64 \ Macromed \ Flash

To, co chcesz zrobić, to utworzyć ten plik mms.cfg (potrzebujesz dostępu administratora, natch) z następującymi wierszami:

ProtectedMode = 0

FullFramerateWhenInvisible = true

Pamiętam, że konieczne było wyłączenie trybu chronionego, mimo że jego przeznaczeniem jest piaskownicowanie aplikacji Flash - z jakiegokolwiek powodu druga opcja nie działałaby bez niego. YMMV, oczywiście - spróbuj najpierw bez wyłączania trybu chronionego - minęło sporo czasu, odkąd skonfigurowałem to na moich komputerach.

FullFramerateWhenInvisible to opcja, dzięki której Flash działa, gdy okno nie jest aktywne.

Po raz kolejny to nie jest konkretne pytanie, które zadałeś, ale jeśli nie jest to prawidłowa odpowiedź, to przynajmniej skieruje cię we właściwym kierunku. :)

Odniesienie: Podręcznik administratora: http://www.adobe.com/devnet/flashplayer/articles/flash_player_admin_guide.html

Framerate trick: http://tukkun.webs.com/ (obecnie # 3 na tej stronie)

Epsilon
źródło
1
Nie używam systemu Windows, a pytanie nie ma związku z Flashem.
Alecail
Na marginesie ścieżką mms.cfg w systemie Linux jest / etc / adobe / i / Library / Application Support / Macromedia w OSX.
Shadok
0

Cóż, nie sądzę, że naprawdę możesz zrobić wszystko, aby utrzymać ostrość
Możesz spróbować zmodyfikować stronę internetową lub możesz otworzyć stronę w nowym oknie, sprawdzić, czy to działa
Jeśli wiesz, jak napisać kod w C ++ / C #, możesz postaraj się ustawić fokus firefox tak, jak za każdym razem, gdy traci on fokus, lub po prostu nie fokuj go wcale, to nie jest takie trudne, a jeśli chcesz kodu, mogę go dla ciebie napisać.
istnieje również sposób na modyfikację rejestru, ale nie wiem, czy to naprawdę będzie działać dla Ciebie, czy nie.
Oto instrukcje:

  1. Otwórz regedit przez Win+ Rlub po prostu wpisz go w polu wyszukiwania menu Start
  2. W regedit przejdź do HKEY_CURRENT_USER> Panel sterowania> Pulpit
  3. Edytuj „ForegroundLockTimeout” typ klucza to DWORD (szesnastkowy), domyślnie 30d40 (200000) milisekund

nie zapomnij wyeksportować klucza przed utworzeniem kopii zapasowej

lub możesz użyć tego programu o nazwie Tweak UI, ale nie jestem pewien, czy działa poprawnie, ponieważ został stworzony dla systemu Windows XP

poqdavid
źródło