Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Przypisywanie właściwości do zmiennej z wyższego zakresu.
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
hatesz
Witam.

Mam taki kod:

  1. var element = $('<div/>', {
  2. 'id': 'error',
  3. 'class': 'window'
  4. }).appendTo($this);
  5.  
  6. $.ajax({
  7. url: (options.type == 'module' ? options.action : 'error/' + options.action),
  8. dataType: 'html',
  9. success: function(data)
  10. {
  11. element.html(data);
  12. element.css('height', $('#response', data).height() + 'px'); // 1
  13. }
  14. });
  15.  
  16. // 2


Problem polega na tym, że w punkcie 1 element "element" ma taką wysokość jaką chce (np. 180px), ale w punkcie 2 już ją traci (wygląd tego elementu się nie zmienia - w przeglądarce wygląda na 180px, ale gdy chce odczytać tą wartość przez element.css('height') to jest tam 0). Wie ktoś jak ustawić tą wartość CSS, aby po wyjściu z funkcji wywoływanej po pomyślnym wykonaniu AJaX-a właściwość "height" CSS-a nie traciła się?

Z góry wielkie dzięki za pomoc.

Dobra, rozwiązałem problem - wystarczyło nie wywoływać AJaX-a asynchronicznie (hipokryta ze mnie, no cóż smile.gif).
Usunąłbym wątek, ale nie mogę znaleźć tu takiego przycisku. :<
wookieb
Zrobiłeś najgorsze co mogłeś. Po prostu nie używaj height w drugim punkcie tylko w callbacku zakończenia żądania ajax.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.