Atrybut Title w Internet Explorer – jak usunąć?

Ostatnio napotkałem na dość dziwny problem w przeglądarce Internet Explorer (a jakże) z atrybutem title. Miałem za zadanie stworzyć własny system wyświetlający podpowiedzi do danego wiersza w zestawie pól formularza. Naturalnym rozwiązaniem dla mnie było użycie atrybutu „title” Algorytm sprowadził się do tego, że na zdarzeniu :hover pobierałem atrybut title przekazywałem do mojego systemu a z tego usuwałem. Wszystko to wykonane było za pomocą jQuery

[code lang=”js”]
$(’.row’).hover(function() {
var title = $(this).attr(’title’);
$(this).removeAttr(’title’);
});
[/code]

Wydawałoby się, że to dosyć proste i banalne, jednakże Internet Explorer zupełnie nie rozumie o co chodzi. Usunięcie atrybutu title zwyczajnie nie przynosi rezultatów. Chmurka od przeglądarki nadal się pojawia. Rozwiązanie jakie udało mi się wynaleźć to ustawienie title na wartość pustą

[code lang=”js”]
$(’.row’).hover(function() {
var title = $(this).attr(’title’);
$(this).attr(’title’, ”);
});
[/code]

I voila! Teraz Internet Explorer jak i inne przeglądarki nie mają problemu. Chmurka przestaje się pojawiać. Co ciekawe… jeśli jednak dodatkowo potem jeszcze usunę ten atrybut w ten sposób:

[code lang=”js”]
$(’.row’).hover(function() {
var title = $(this).attr(’title’);
$(this).attr(’title’, ”);
$(this).removeAttr(’title’);
});
[/code]

to chmurka znowu się pojawia z oryginalnym tekstem. Wygląda na to, że ustawienie samodzielne title jakoby podmienia zawartość kontenera zatem usunięcie tego co sami zrobimy „odsłania” wartość pierwotną. Dziwne?

1 thought on “Atrybut Title w Internet Explorer – jak usunąć?

  1. Pingback: e-papierosy

Comments are closed.