2012-08-14 10 views
25

chcę ukryć etykietę przy użyciu efektu fadeOut ale po jej zakończeniu chcę wstawić wewnątrz niej  jQuery - wstawić   wewnątrz etykiety

$('label.alert').fadeOut('slow',function(){$(this).text(' ');}); 

ale produkuje   jako surowego tekstu. Jakieś pomysły ?

Odpowiedz

57

Użyj .html() zamiast .text().

+0

jesteś również prawo :) – Tony

+0

Myślę, że może .html dodać dodatkowe obciążenie w porównaniu do .text – dsdsdsdsd

+4

@dsdsdsdsd - Kiedy zaczynasz myśleć, że jak bezpańskie niebezpiecznie zbliża się do przedwczesnej optymalizacji: http://c2.com/cgi/wiki?PrematureOptimization - jeśli .text nie działa, nie powinieneś go używać bez względu na to, czy powoduje on obciążenie ogólne, czy nie (chociaż szczerze, pomyślałbym. mieć więcej narzutów, ponieważ musi uciec z twojego łańcucha, a następnie go usunąć.) IDK, nie robię zbyt wiele programowania w Internecie.) – ArtOfWarfare

0

replaceWith wystarczyły

$('label.alert').fadeOut('slow',function(){$(this).replaceWith('<label class="alert">&nbsp;</label>');});