Błędna interpretacja przez IE atrybutu alt w znaczniku img

| kategoria: HTML i XHTML, Skrypty | Komentarze (0)

Internet Explorer w wersji 6 w znaczniku img atrybut alt traktuje również jako title. Alt jest do czegoś innego, niż pokazywanie krótkiej informacji w tzw. dymku. Alt funkcjonuje gdy:

  • obrazek się dopiero ładuje
  • z jakiś powodów obrazek nie może być wczytany, np. zły adres url do niego
  • masz wyłączoną grafikę
  • używasz przeglądarki tekstowej
  • używasz screenreadera (przeglądarki czytającej na głos)
  • wyszukiwarki przeszukują zasoby

Można temu zapobiec przez niewielki skrypt poprawiający ten błąd:

  1. function noAltTooltip(){
  2. images = document.getElementsByTagName('img');
  3. for (var i = 0; i < images.length; i++)
  4. {
  5. var title = images[i].getAttribute('title');
  6. var alt = images[i].getAttribute('alt');
  7. if ((document.all) && (alt) && (!title))
  8. {
  9. images[i].setAttribute('title', '');
  10. }
  11. }
  12. }
  13. // dodawanie zdarzen do funkcji
  14. function addEvent(obj, evType, fn){
  15. if (obj.addEventListener){
  16. obj.addEventListener(evType, fn, true);
  17. return true;
  18. }
  19. else if (obj.attachEvent){
  20. var r = obj.attachEvent("on"+evType, fn);
  21. return r;
  22. }
  23. else {
  24. return false;
  25. }
  26. }
  27. addEvent(window, 'load', function(){
  28. noAltTooltip();
  29. });

Powyższy skrypt najlepiej umieścić w komentarzach warunkowych dla IE. Przykład:

Więcej informacji o funkcji addEvent znajdziesz na stronie Scott'a Andrew w artykule pt. Crossbrowser DOM Scripting: Event Handlers.

Warto zajrzeć jeszcze

Nie podoba mi sięPodoba mi się (Nie ma jeszcze głosów, ale możesz być pierwszy)

Komentarze

Możesz zostawić komentarz lub wysłać sygnał trackback ze swojej strony.

Zanim dodasz komentarz, to zapoznaj się z zasadami dotyczącymi komentarzy.

Dodaj komentarz
Zaznacz, jeśli potwierdzasz wysłanie komentarza

Polecamy

Znajdź na stronie

Pomoc do strony

Bądź na bieżąco

do góry