MozillaPL.org - polskie centrum Mozilli

Główne menu:

Zmiana koloru karty po jej odświeżeniu

Dodatki rozszerzające funkcjonalność i schematy wyglądu Mozilli Firefox

Moderator: Pomocy?!

Zmiana koloru karty po jej odświeżeniu

Postautor: pjasio253 » 17 grudnia 2010, 10:09

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13 ( .NET CLR 3.5.30729)

Witam
Czy istnieje dodatek, który spowoduje, że po odświeżeniu otwartej karty (np.Reload Every) i znalezieniu zmienionej treści w tej karcie będzie informował o tym użytkownika np.zmienionym kolorem karty czy nawet jej pulsowaniem?
Dzięki z góry za wskazówki, pzdr.
pjasio253
 
Posty: 3
Z nami od: 22 lutego 2007, 13:54

Odp: Zmiana koloru karty po jej odświeżeniu

Postautor: Mirek » 17 grudnia 2010, 22:12

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 6.0; pl; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13

Rzuć okiem na:
viewtopic.php?p=199389#p199389
Przy czym zamiast wspomnianego tam dźwięku, możesz modyfikować np. tytuł strony (document.title) dopisując np. jakieś (migające?) wykrzykniki na początku tytułu strony (i zarazem karty), gdy wykryjesz zmianę. Albo np. podmieniając favikonę (może na jakąś animowaną?).

Jeśli zrobisz już skrypt Greasmonkey i wygenerujesz na jego podstawie rozszerzenie, to możesz do kodu rozszerzenia dorzucić coś w stylu:
Kod: Zaznacz cały
var i = .......;
gBrowser.mTabContainer.childNodes[i].style.backgroundColor ='rgb(0,0,128)';
(może tylko w lepszy sposób dokop się do obiektu reprezentującego kartę - ten po prostu pamiętałem - możesz podejrzeć w jakimś rozszerzeniu operującym na kartach).

Ale lepsze chyba będzie podejście takie:
Tutaj Grzegorz podał selektory, które mogą Ci się przydać.
Nie zostało to tam powiedziane, ale chyba jedyny sensowny sposób, to dodać do pliku userChrome.css np:
Kod: Zaznacz cały
.tabbrowser-tabs tab[label$="!<>!"] {background-color: rgb(0,0,128) !important;}
.tabbrowser-tabs tab[label^="!<>!"] {background-color: rgb(0,0,128) !important;}
.tabbrowser-tabs tab[label*="!<>!"] {background-color: rgb(0,0,128) !important;}

co będzie kolorowało kartę na niebiesko, gdy w jej tytule wystąpi !<>! odpowiednio na końcu, początku lub gdziekolwiek (użyj tylko jednego).
Ewentualnie, jeśli tytuł jest stały, to np. tak:
Kod: Zaznacz cały
.tabbrowser-tabs tab[label="!<>! Jakiś tam tytuł strony"] {background-color: rgb(0,0,128) !important;}

Więcej o selektorach atrybutów możesz poczytać sobie m.in. tu:
http://www.kurshtml.boo.pl/css/atrybuty.html
http://www.kurshtml.boo.pl/css/selektory.html

Oczywiście przykładowe !<>! dopisujemy do tytułu strony z poziomu GM, po wykryciu interesującej nas zmiany na stronie i kolor karty się automatycznie zmieni.

Innego sposobu kolorowania kart z poziomu Greasemonkey nie znam i raczej go nie ma.
Pulsowanie uzyskasz dodając np. przy pomocy setTimeout() lub setInterval() cykliczne zmienianie tytułu strony.
Mirek
Moderator
 
Posty: 2152
Z nami od: 09 sierpnia 2007, 20:37

Odp: Zmiana koloru karty po jej odświeżeniu

Postautor: pjasio253 » 17 grudnia 2010, 23:20

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13 (.NET CLR 3.5.30729)

Rewelacja, bardzo dziękuję za obszerną pomoc !
pjasio253
 
Posty: 3
Z nami od: 22 lutego 2007, 13:54

Odp: Zmiana koloru karty po jej odświeżeniu

Postautor: tokirium » 08 sierpnia 2015, 11:52

Przeglądarka: Mozilla/5.0 (X11; Linux i686; rv:9.0.1) Gecko/20120127 Firefox/9.0.1 SeaMonkey/2.6.1

Przepraszam za odkop, ale potrzebuję skryptu, który zmieni tytuł strony (widoczny na karcie) po znalezieniu na stronie określonego tekstu, w celu zastosowania stylu kolorującego kartę. Skrypt powinien działać na wszystkich otwartych kartach, w razie gdy treść się zmieni. Kolorowanie działa bez problemu z poziomu userChrome.css, ale mam problem z tą zmianą tytułu karty. Znalazłem, że za tytuł strony odpowiada polecenie document.title. Nie wiem, czy dobrze zrobiłem, bo zastosowałem taki skrypt, ale jest wyświetlany tylko alert, a tytuł nie ulega zmianie.
Kod: Zaznacz cały
if (/(Szukany tekst)/i.test (document.body.innerHTML) )
{   
    //document.title = "Zmieniony tytuł";
    alert ("Tytuł został zmieniony");
}
tokirium
 

Odp: Zmiana koloru karty po jej odświeżeniu

Postautor: dexter » 08 sierpnia 2015, 12:24

Przeglądarka: Mozilla/5.0 (Windows NT 6.0; rv:42.0) Gecko/20100101 Firefox/42.0

No jak zakomentowałeś pierwszą linijkę w if-ie, tytuł się nie zmieni :).
dexter
Moderator
 
Posty: 7740
Z nami od: 02 października 2004, 21:30

Odp: Zmiana koloru karty po jej odświeżeniu

Postautor: tokirium » 08 sierpnia 2015, 12:45

Przeglądarka: Mozilla/5.0 (X11; Linux i686; rv:9.0.1) Gecko/20120127 Firefox/9.0.1 SeaMonkey/2.6.1

Zakomentowałem, bo jak nie działało to próbowałem kombinować na kopii poniżej i porządkując skrypt przed wklejeniem tutaj zapomniałem usunąć komentarz :) W każdym razie nie działało, karta dalej wyświetla tylko url. Może to wina tego, że strona ma jakieś ramki?
tokirium
 

Odp: Zmiana koloru karty po jej odświeżeniu

Postautor: dexter » 08 sierpnia 2015, 13:04

Przeglądarka: Mozilla/5.0 (Windows NT 6.0; rv:42.0) Gecko/20100101 Firefox/42.0

Na tej stronie tutaj - działa. Może to być kwestia ramek. Możesz sprawdzić selektor za pomocą narzędzi deweloperskich Firefoksa, bo pewnie odwoływanie się do całego document.body jest zbędne.

Jeszcze warunek w if-ie jest dziwny, zawsze zwraca true. Powinno być if (document.body.innerHTML.contains("Szukany tekst"))
dexter
Moderator
 
Posty: 7740
Z nami od: 02 października 2004, 21:30

Odp: Zmiana koloru karty po jej odświeżeniu

Postautor: tokirium » 08 sierpnia 2015, 13:42

Przeglądarka: Mozilla/5.0 (X11; Linux i686; rv:9.0.1) Gecko/20120127 Firefox/9.0.1 SeaMonkey/2.6.1

Teraz to już w ogóle nic nie działa. Dodam jeszcze, że korzystam z przeglądarki Seamonkey 2.6.1 pod Linuxem, może w tym jest jakiś problem.
tokirium
 

Odp: Zmiana koloru karty po jej odświeżeniu

Postautor: periodyk28 » 11 sierpnia 2015, 11:36

Przeglądarka: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.130 Safari/537.36

Spróbuj w starszej wersji przeglądarki.
periodyk28
 
Posty: 5
Z nami od: 08 sierpnia 2015, 13:09


Wróć do Rozszerzenia dla Firefoksa

Kto jest online

Zarejestrowani użytkownicy: Bing [Bot], dexter, Google [Bot]

Przejdź do powiązanej strony

Nawigacja:

Stopka: