Przycisk "dodaj do ulubionych" i walidacja kodu

Stosuję na stronie skrypt uniwersalny przycisku “Dodaj do ulubionych”, który znalazłem na tej stronie. Niestety walidator wskazuje mi błędy.

Zamieniłem jedynie tekst na grafikę, walidator twierdzi, że nie można w tym miejscu stosować atrybutu a :

document.writeln('');[/code]




Walidator sugeruje, że dwa znaki [b]&[/b] też nie mogą tu być:

[code](window.opera && window.print) )

Jak to można rozwiązać? Stosuję kodowanie DTD XHTML 1.0 Strict//EN.

Może ktoś zna inny skrypt tego typu, na który walidator patrzyłby przyjaznym okiem.

Ten akurat sprawdzałem pod FF oraz IE i działa poprawnie, ale pod Chrome już nie.

1 dodaj onclick do image zamiast tagu a

2 czemu validator czepia się podwójnego && w kodzie js nie mam pojęcia, sprawdź czy masz dobrze otagowany ten kod.

3 z krótkiego research’u wynika że takie przeglądarki jak Google chrome czy Safari nie pozwalają na dodawanie do ulubionych via js więc niestety nic na to nie poradzisz.

  1. Nie za bardzo wiem, jak zamienić ten fragment kodu… Próbowałem na podstawie informacji znalezionych przez Google, ale wtedy po kliknięciu na grafikę nic się nie dzieje.

  2. Tagi są pozamykane. Nic innego nie przychodzi mi do głowy. Jest taki komunikat z walidatora: character “&” is the first character of a delimiter but occurred as data.

  3. O tym nie pomyślałem wcześniej, ale przynajmniej mam jasność w tej kwestii.

document.writeln('');[/code]

tak to powinno wyglądać

  1. zrób tak żeby cały warunek z if’a był w jednej linii (teraz jest bodajże w dwóch).

Zaproponowane rozwiązanie funkcjonuje jak poprzednie, ale też walidator wykrywa błąd (teraz img ). Przeniesienie tekstu do jednej linii nie rozwiązało problemu.

Zauważyłem, że nawet po wpisaniu, zwykłego tekstu walidator zgłasza błąd, że takiego tagu nie powinno tam być:

document.writeln(’

tekst

');

Ostatecznie z czymś takim da się żyć, w końcu to chyba nie są poważne błędy…

W przypadku dokumentów XHTML skryptu powinno się umieszczać w sekcjach CDATA: http://en.wikipedia.org/wiki/CDATA i wydaje mi się, że o to tutaj chodzi (o ile nie pominąłeś jakiegoś znacznika domykającego, itp.).