Pomysł na rozszerzenie do firefoxa

No tak, potrzeba matką (nomen omen) wynalazków, otóż - podróżując po internecie nieraz trafia się na interesujące odnośniki, jeżeli strona do któej prowadzi odnośnik jest wyjątkowo interesująca, dodaje się ją do ulubionych zakładek; kiedy odwiedza się jakąś strone, odnośnik do niej zostaje oznaczony jako 'odwiedzony', :visited, stąd wiadomo że się było na tej stronie.

Generalnie warto by się przyjrzeć temu mechanizmowi, symptomy wskazują iż przeglądarka tworzy listę ' odnośników które zostały odwiedzone' (trudno mi powiedzieć gdzie i jak to się odbywa) a następnie formatuje te odwiedzone w ustalony sposób, i wogóle ustawia im flage dla pseudoklasy :visited.Dla odmiany idea która mnie naszła, wygląda tak: odwiedzony odnośnik, interesujacy odnośnik, odnośnik obrzydliwy, jednym słowem, aby każdy, dowolny odnośnik dało się oznaczyć.

Oznaczanie odnośników nie tylko w sensie odwiedzony/nieodwiedzony, ale jeszcze bardziej - jako fajne/niefajne, oznaczanie własnymi ikonami, krótkim tekstem, czymbądź. Sam proces nie byłby tak automatyczny jak :visited, pojedyncze odnosniki oznaczałoby się samemu, prawe kliknięcie na odnośniku, wybranie z listy oznaczenia dla odnośnika i już, za każdym razem kiedy pojawił by się ów odnośnik na jakiejkolwiek stronie - byłby oznaczony wybranym oznaczeniem.

Jeżeli byłoby zapotrzebowanie, możnaby ów proces zautomatyzować - wystarczyłoby listę oznaczonych odnośników wysyłać hen na serwer, a potem stamtąd ją pobierać, wtedy dałobysię wymieniać oznaczeniami odnośników.

Rozwiązanie techniczne też jest proste, wymyśliłem następujący model: po oznaczeniu odnośnika, informacja o reści href="" trafiałaby na listę, w parze z informacją jakim oznaczeniem został ten odnośnik wyróżniony. Dostępne rodzaje oznaczeń byłby uprzednio przygotowane na liście, na której znajdowałyby się wcześniej przygotowane opisy/ikony, oraz opisy/ikony użytkownika.

Następnie wyświetlanie oznaczeń - to już dość prosta sprawa, mianowicie - po wczytaniu strony, skrypt sprawdząłby wszstkie odnośniki na stronie, jeżeli wartosc href="" któregoś z nich, odpowiadałby wartości zapisanego href="", wtedy pobierałby identyfikator opisu, który w istocie byłby zwykłą css-ową klasą, i nadawał tę klasę odpowiedniemu odnośnikowi; następnie wbudowana obsługa css powodowałaby że odnośnik po prostu zostanie wyróżniony i już. To dość mętne tłumaczenie - ale ogół idei jest myślę przejrzysty.

Niebezpieczeństwo związane z całym pomysłem polega na nadużywaniu przez użytkownika opisów; sytuacja w której jakiś fanatyk oznaczyłby milion unikalnych href="" sprawia iż jeżą się włosy na plecach, przeglądarka miałaby spory kłopot z pracą skryptu.

Nasuwającym się rozwiązaniem byłoby wykorzystanie wbudowanych mechanizmów ff, dla przykładu - dodanie oznaczenia odnośnika, powodowałoby dodanie do szablonu użytkownika stosownego wpisu, eg:

userContent.css
a[href="http://www.oznaczenie.pl/"]{
  padding-right: 20px;
  background: url('oznaczenie.png') no-repeat top right;
}

Dodanie następnego oznaczenia, wyglądałoby tak :

userContent.css
a[href="http://www.oznaczenie.pl/"]{
  padding-right: 20px;
  background: url('oznaczenie.png') no-repeat top right;
}

a[href="http://www.innastrona.pl/"]{
  padding-right: 20px;
  background: url('oznaczenie-inne.png') no-repeat top right;
}

Dodanie następnej strony, do użytego już oznaczenia :

userContent.css
  a[href="http://www.oznaczenie.pl/"],
  a[href="http://www.zaznaczenie.pl/"]{
  padding-right: 20px;
  background: url('oznaczenie.png') no-repeat top right;
}

a[href="http://www.innastrona.pl/"]{
  padding-right: 20px;
  background: url('oznaczenie-inne.png') no-repeat top right;
}

Itp. itd.Generalny problem w takim wypadku polegałby na tym iż, nie mam pojęcia jak to sensownie zrobić żeby usuwać oznaczone strony, usuwać same oznaczenia (choć to byłoby w miare proste chyba, wystarczy wywalić stosowną regułę), pozatym jak nie spieprzyć człowiekowi jego szablonu. Nie wiem jak odczytywać wartości, kompletnie nic nie wiem jak narazie.

Mh, możnaby ewentualnie tak :

userContent.css
@media screen{
 a[href="http://www.oznaczenie.pl/"], 
 a[href="http://www.zaznaczenie.pl/"]{
  padding-right: 20px;
  background: url('oznaczenie.png') no-repeat top right;
  }
 a[href="http://www.innastrona.pl/"]{
  padding-right: 20px;
  background: url('oznaczenie-inne.png') no-repeat top right;
  }
}

 

Wtedy łatwiej byłoby dojść do tego gdzie co leży, a przy okazji nie popsuć nikomu szablonu (zakładając że ów nie stosuje @media). Choć możliwe iż łatwiejsze i szybsze byłoby generowanie takiej listy niezależnie, korzystając z XUL i całej tej bandy.

So whell, pomysł jest jak narazie.

Nie roszczę sobie wyłączności do idei, gdyby ktoś to przeczytał i miał umiejętność stworzenia rzeczonego rozszerzenia, to ogromnie bym się ucieszył.

Komentarze

Popularne posty z tego bloga

Mapy ISOK LIDAR z Geoportalu w OSMAnd przez OsmAnd Map Creator

Jak dodać własną mapę do OSMAnd

IE7 PNG i filter :