Strona 1 z 1
jQuery - film 14 - pobranie div- jak działa ten zapis?
Napisane: sobota, 30 lipca 2016, 00:23
przez lukasz21
W filmie 14 jest cześć kodu, której nie rozumiem. Pod koniec filmu jest pokazane jak z div o id='otoczka' pobierana jest tresc i wstawiana w okienko, które po hover pojawia sie obok 'tr' w table. I mam pytanie o ta czesc. W Javascript trzeba pobrac tresc np. div do zmiennej i potem ta zmienna można przekazac dalej. Tutaj nie widze sposobu jak tresc z div jest zapisana i przekazana dalej do funkcji.
Chodzi mi dokładnie o ta cześć kodu:
Code: Zaznacz cały
function(evt)
{
$(this).addClass("podswietlenie");
poczatek = evt.timeStamp;
hint.css(
{
"left": evt.pageX+20,
"top": evt.pageY
}
).html($("."+$(this).attr("id")).html()).show(200); // jak to działa dokładnie? Jak to pobiera tresc div id='otoczka'? To zaznacza 'tr' na podstawie : tr id='nr[i]' ?
}
Z góry dziękuje za odpowiedź.
Re: jQuery - film 14 - pobranie div- jak działa ten zapis?
Napisane: sobota, 30 lipca 2016, 00:46
przez Morfidon
$("...") - pozwala Ci wyszukać jakikolwiek element i od razu przy pomocy operatora '.' działać na nim. Czy już rozumiesz ten kod?

Jak coś to pisz dalej.
Pozdrawiam

Re: jQuery - film 14 - pobranie div- jak działa ten zapis?
Napisane: sobota, 30 lipca 2016, 14:43
przez lukasz21
Źle zadałem pytanie, juz poprawiam się.
Nie rozumiem jaka akcje ta cześć wykonuje:
Na poczatku JQ zaznacza 'tr' w table i dodaje efekt 'hover' dla każdego 'tr'. Funckja w 'hover' robi 2 rzeczy. Po pierwsze dodaje class 'podswietlenie'. Potem dla 'hint', czyli div'a ktory bedzie tworzony po najecheniu myszka na 'tr' , wykonuje się kod : ' .html($("."+$(this).attr("id")).html()) '.
Jeśli dobrze rozumiem ten kod to : skoro jest tam 'this' to zaznacza on 'tr', ponieważ 'tr' jest zaznaczony w selektorze. Potem dla 'tr' pobiera jego 'id'. W takim razie do 'hint' [tworzonego div'a] powinno dodać treść 'tr'.
Dlatego dla 'tr' o id 'nr1' powinno dodać w 'hint' : ' Video Kurs C++ '.
Ale zamiast tego dodaje treść div'ów, które sa w '<div id="otoczka">. Na przykład 'tr' o id 'nr1' dostaje : 'To jest jakiś ciekawy tekst.' . Dlaczego?
Re: jQuery - film 14 - pobranie div- jak działa ten zapis?
Napisane: sobota, 30 lipca 2016, 21:25
przez Morfidon
Wcześniej ten kod:
Code: Zaznacz cały
$("#otoczka div").each(
function(i)
{
$(this).attr("class", "nr" + (i+1))
}
);
Nadaje dla każdego diva w konterzene o id 'otoczka' klasę nr1,nr2,nr3 etc.
A to robi to samo:
Code: Zaznacz cały
$("#listaKursow tr").each(
function(i)
{
$(this).attr("id", "nr" + i)
}
);
dla wszystkich table rows (wierszy)
Więc kod, który Ty przytaczasz pobiera z klasy wartość dla odpowiednika.
Re: jQuery - film 14 - pobranie div- jak działa ten zapis?
Napisane: niedziela, 31 lipca 2016, 23:20
przez lukasz21
Już zrozumiałem, dziękuje za odpowiedź.