Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów
[jquery] Istnieje jakaś funkcja typu wstaw ZAMIAST? - Wersja do druku

+- Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów (https://www.webmastertalk.pl)
+-- Dział: Technologie internetowe - tworzenie stron WWW (https://www.webmastertalk.pl/forum-technologie-internetowe-tworzenie-stron-www)
+--- Dział: xHTML, CSS, JavaScript (https://www.webmastertalk.pl/forum-xhtml-css-javascript)
+--- Wątek: [jquery] Istnieje jakaś funkcja typu wstaw ZAMIAST? (/thread-jquery-istnieje-jaka%C5%9B-funkcja-typu-wstaw-zamiast)



[jquery] Istnieje jakaś funkcja typu wstaw ZAMIAST? - kbzium - 02-10-2011

Cześć,

mam pewien div z kilkoma innymi elementami w nim. Chcę, aby po mouseover z nim coś się działo (elementami wewnątrz) ale potem po mouseleave była treść pierwotna. Klonuję więc go tuż po $(document).ready() i potem chcę PODMIENIĆ z aktualnym (tym zmodyfikowanym) divem. Jak to zrobić? Chcę po prostu uzyskać dokładnie takiego samego diva, w tym samym miejscu, jak na początku.

Probowałem:
Kod:
$(document).ready(function() {
    $prevState = $("div .rating").find("*").clone(false);
    
    $("div .starholder").live({
        mouseenter: function() {
                    $(this).parent().find(".star").remove();
                    $(this).prevAll().append("<div class='star'>");
                    $(this).append("<div class='star'>");
            
        },
        click: function() { alert("jestem"); }
        });
        
    $("div .rating").mouseleave(function() {
        $(this).!!!!!!!!!!!!!!!!!!!($prevState); // tutaj potrzebna taka funkcja...
    });

});
Pozdr.


RE: [jquery] Istnieje jakaś funkcja typu wstaw ZAMIAST? - Kartofelek - 02-10-2011

http://jqapi.com/
poszukaj sobie replace Wink
równie dobrze możesz zastosować wspomniane przez ciebie append, prepend i wrap. Kwestia podejścia do tego.


RE: [jquery] Istnieje jakaś funkcja typu wstaw ZAMIAST? - kbzium - 03-10-2011

Właśnie się zastanawiałem jak wykorzystać zwykłe funkcje jquerry, ale jakoś nie znalazłem wyjścia. Bo jeśli kopiuję zawartość div.rating, a potem chcę ją dodać zamiast poprzedniej, to kasując poprzedniązawartość, nowa jest wstawiana niżej, poza tym nie tak jak miało być (również w innym względzie). Jak zrobić to z append/prepend/wrap? Dzięki kartofelku Smile!


RE: [jquery] Istnieje jakaś funkcja typu wstaw ZAMIAST? - Kartofelek - 03-10-2011

replaceWith($prevState) jest spoko do twojego celu.

Swoją drogą czemu
Kod:
$("div .rating").find("*")
a nie
Kod:
$("div .rating")
?

Ciężko tak bez kodu html ogarnąć co chcesz dokładnie zrobić.


RE: [jquery] Istnieje jakaś funkcja typu wstaw ZAMIAST? - kbzium - 03-10-2011

Działa! Dziękuję!