Podświetlenie nowej treści po odświeżeniu strony

w dziale Dostosowywanie Opery do własnych potrzeb
thechaber napisał(a):

Czy da się i ewentualnie jak zrobić, żeby w jakiś sposób wyróżniała się nowa treść na stronie po jej odświeżeniu?
Czyli czytam sobie wiadomości, zrobię F5 i jeżeli jakaś nowa treść się pojawiła to przeglądarka podświetla, pogrubia, robi cokolwiek, żebym widział jaka jest różnica w stosunku to poprzedniego stanu?

Medium napisał(a):

Zamiast cudować, nie prościej skorzystać z operowego klienta?

thechaber napisał(a):

Możesz trochę rozwinąć, o co chodzi?

Medium napisał(a):

Tobie chodzi o pocztę webową, na stronie www, tak?
No chyba, że masz na myśli jakieś dopiski, czy komentarze na stronie, wtedy odwołuję.

thechaber napisał(a):

Nie, chodzi mi jakąkolwiek stronę www.
Załóżmy Onet. Przeglądam tematy. Odświeżam stonę, i pojawia się gdzieś na stronie nowy temat (link, zdania których nie było poprzednio), ale nie widzę go spośród dziesiątków innych tematów które już tam były, bo jest ich po prostu za dużo. I teraz chodzi o to, żeby taka zmiana została przeze mnie zauważona np. podświetleniem tła, czy coś w ten deseń, innym kolorem czcionki itp.

Medium napisał(a):

Rozumiem, czyli odwołuję.

W sumie ciekawa koncepcja, ale nie wiem, o ile do zrobienia, ale raczej już przez samych twórców Opery.

Możesz - jak Ci się chce - napisać o tym po angielsku na Desktop wish-list.

Ryszard napisał(a):

W zasadzie niezły pomysł. Ale nie do zrobienia samą Operą. Żeby wykryć zmiany trzeba porównać stronę przed i po odświeżeniu.
Byłoby, gdyby na stronie nowa zawartość była jakoś wyróżniana. To znaczy to jest do zrobienia po stronie serwera.

Łukash napisał(a):

[ponoć] Podobną funkcjonalność posiadają dodatki do Foxa np Update Scanner

thechaber napisał(a):

Dokładnie o taką funkcjonalność chodzi, nie sądzę by do tego było potrzebne coś po stronie serwera.

Ryszard napisał(a):

Albo masz program (rozszerzenie), które porównuje wersję starą i nową i zaznacza przybytek albo - autorzy serwisu przyjmują zasadę - treści nowe na stronie oznaczamy np.

class="new"
i w arkuszu stylu strony robimy odpowiednie reguły. Jak długo nowość byłaby tak oznaczana - do wprowadzenia nowszej nowości.
Tylko weź teraz przekonaj właścicieli serwisów, że to się im opłaci.

chocimir napisał(a):

Można by napisać skrypt, który zapisuje w magazynie zrzut źródła strony, a przy kolejnych odwiedzinach porównuje i dokleja klasę do nowych elementów. Ktoś chętny (bardziej niż ja)?

thechaber napisał(a):

Na mnie nie liczcie smile

chocimir napisał(a):

Jako tako działający skrypt możecie pobrać stąd: http://files.myopera.com/chocimir/skrypty/wykrywacz%20zmian.js . Jeśli spodoba się wam, mogę go dopracować.

Łukash napisał(a):

@chocimir dobra robota. Skrypt faktycznie śmiga i moim zdaniem warto go dopracować.

daroc napisał(a):

Nieźle, nawet nie pomyślałem, że takie coś może być tak bardzo przydatne.

Pozwolę sobie zgłosić uwagi/propozycje:
1. Skrypt nie zaznacza nowych divów, które mają taką samą treść jak jeden z już istniejących. Np. jeśli na stronie jest jeden div o treści "nowość", a po odświeżeniu dodane zostaną dwa nowe divy "nowość", to nie zostaną one zaznaczone.
2. Można by dodać jakiś przycisk/skrót, który umożliwiałby ukrywanie/pokazywanie tego podświetlenia. Być może w ogóle to podświetlenie mogłoby być... "ładniejsze", ale raz że to kwestia gustu, dwa że ciężko dopasować aby na każdej stronie wyglądało równie ładnie.

Edit:
3. Sprawdź np. http://mistrzowie.org/logowanie Wpisz jakiś nieistniejący login i jakiekolwiek hasło - nowe elementy są niepoprawnie oznaczane, np. menu jest podświetlane. Tak samo jak po wpisaniu tego złego loginu i hasła wpiszesz jeszcze raz adres http://mistrzowie.org/logowanie, to zaznaczane są pola, które przez cały czas istniały.

Edit2:
4. Jeśli adres obrazka się zmienił, element także powinien zostać jakoś oznaczony, np. jak jestem na stronie "nieczytane posty" na forum, to jak zmieni się ikonka wątku jako "nowe posty" - można by oznaczyć to pole.

Co do wyglądu... może zamiast zaznaczać na żółto, wyświetlać jakąś gwiazdkę w rogu?

chocimir napisał(a):

Originally posted by Łukash:

@chocimir dobra robota. Skrypt faktycznie śmiga i moim zdaniem warto go dopracować.


Miło słyszeć. Dzięki.

Originally posted by daroc:

Nieźle, nawet nie pomyślałem, że takie coś może być tak bardzo przydatne. Pozwolę sobie zgłosić uwagi/propozycje:


1. Tak jest teraz napisany. Postaram się go przebudować, aby radził sobie i z tym.
2. Racja. W ogóle przydałby się jakiś panel sterowania, tylko nie chcę pchać się w rozszerzenia. Może kawałek dokumentu przywoływany skryptozakładką? Co do „piękności” oznaczania: jeśli znasz CSS, możesz zmienić styl nowych elementów w skrypcie (przeniosłem zmienną na początek), albo — tak jak wymyślił Ryszard — dodać do swojego arkuszu stylu strony odpowiednie reguły do klasy „.nowatresc” (i podzielić się z nami). Ja też coś dodam, ale to wszystko i tak kwestia gustu.
3. Powinno już być dobrze.
4. Zobaczę, co da się zrobić.

Thechaber, widziałeś już? Co myślisz?

Pierwsza porcja ulepszeń: http://files.myopera.com/chocimir/skrypty/wykrywacz%20zmian-1.1.js

thechaber napisał(a):

Kurcze, dopiero zaczynam z Operą, jak to uruchomić? Zrobiłem plik .js na C. Wskazałem dysk jako miejsce z przetrzymywaniem skryptów użytkownika. Co dalej?

lemari napisał(a):

Originally posted by thechaber:

jak to uruchomić?


http://unite.opera.com/application/401/

daroc napisał(a):

Już zacząłem dostrzegać pewną wadę... Localstorage strasznie puchnie i co chwilę wymaga to 5, to 10, to 20 MB przy częstszym używaniu danej strony, jak np. YouTube, gdzie odwiedzamy różne podstrony tej samej witryny. To samo dotyczy serwisów rozrywkowych typu mistrzowie.org (nie jestem pewien czy "problem" występował akurat na tym) itp.
Zdecydowanie skrypt musi odpalać się na żądanie, a nie zawsze. Czyli np. chciałbym uruchamiać skrypt na głównej stronie wp.pl, ale na podstronach z artykułami już nie.

daroc napisał(a):

Pytanie - czy chce poświęcać na to aż tyle czasu. Co innego zrobić komuś skrypt w godzinę czy dwie i zapomnieć, a co innego robić skrypt, o który zaraz wszyscy będą pytać "a dlaczego nie ma opcji takiej" albo "czemu skrypt nie potrafi tego"... wink
Ale myślę, że w samym pomyśle na skrypt tkwi spory potencjał, więc chętnie będę używał tego skryptu, tym bardziej jeśli będzie rozwijany.

chocimir napisał(a):

Czasu mam dużo, gorzej z umiejętnościami… Może ktoś ma ochotę przejąć pomysł? Bo sam już niewiele napiszę.
Dodałem funkcję chowania podkreślenia: przycisk, skryptozakładka i „panel sterowania”, w którym można zmienić styl oznaczenia na witrynie: przycisk, skryptozakładka; od teraz będą ignorowane fragmenty dokumentu w adresie (to po kratce) żeby lepiej wykrywać zmiany i oszczędzić miejsce w magazynie.
wykrywacz zmian-1.2.js

daroc napisał(a):

To ja bym proponował coś takiego:
Niech skrypt będzie domyślnie wyłączony, a włączyć go można na pojedynczych stronach, gdy uważamy, że jest to potrzebne. Oczywiście nasz wybór powinien zostać zapamiętany dla danej domeny.
Chyba nie jest to bardzo skomplikowane, a przynajmniej nie będę miał żółtej (lub "zagwiazdkowanej") prawie każdej strony, dopóki tego nie wyłączę.

chocimir napisał(a):

Originally posted by daroc:

To ja bym proponował coś takiego:
Niech skrypt będzie domyślnie wyłączony, a włączyć go można na pojedynczych stronach, gdy uważamy, że jest to potrzebne. Oczywiście nasz wybór powinien zostać zapamiętany dla danej domeny.
Chyba nie jest to bardzo skomplikowane, a przynajmniej nie będę miał żółtej (lub "zagwiazdkowanej") prawie każdej strony, dopóki tego nie wyłączę.


Proszę bardzo: wykrywacz zmian-1.3.js.

chocimir napisał(a):

Poprawiłem kolejne sprawy:

Originally posted by daroc:

Localstorage strasznie puchnie

Originally posted by daroc:

Skrypt nie zaznacza nowych divów, które mają taką samą treść jak jeden z już istniejących

Skoro są takie same, to który jest nowy? (przyjąłem że drugi)
Domyślnie treść będzie jednak oznaczana na każdej stronie, ale można to zmienić wpisem w 18 linijce.
wykrywacz zmian-1.4.js
Ktoś jeszcze tego używa?

daroc napisał(a):

Originally posted by chocimir:

Skoro są takie same, to który jest nowy? (przyjąłem że drugi)


Chyba obydwa...
Nie pamiętam o co dokładnie chodziło, ale chyba o zaznaczanie np. liczby komentarzy przy wpisach. Lepiej żeby oznaczyły się (niepotrzebnie) obydwa, niż mielibyśmy coś przegapić. W końcu po to mamy ten skrypt, żeby niczego nie ominąć, prawda? wink

Edit: czy nazwy zmiennych z polskimi znakami nie będą kiedyś tam problematyczne?