Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript] Prośba o funkcje
Forum PHP.pl > Forum > Przedszkole
crew123
Cześć.
Moglibyście mi powiedzieć jak zrobić za pomoca javascript funkcję, która po najechaniu na <tr> zmieni opacity divów z klasą crew i crew2 leżących w tym <tr> ?
Kshyhoo
A nie lepiej użyć hower w CSS?
  1. tr:hover {
  2. opacity:1;
  3. }
crew123
chce aby to się ładnie animowało inaczej bym nie pisał smile.gif
Kshyhoo
To może wtedy poszukaj coś z jQuery.
crew123
szukałem i nie znalazłem i widzę, że nie bardzo wiesz o co chodzi więc wytłumaczę, mam nP:

  1. <tr class="najedz">
  2. <td class="crew_jakis_tam"><td>
  3. <td class="crew1"></td>
  4. <td class="crew2"></td>
  5. </tr>


Jak widać po najechaniu na tr o klasie "najedz" chce aby klasa "crew_jakis_tam" zostal bez zmian tylko zmienili sie klasy "crew1" oraz "crew2", mam nadzieję, że teraz każdy zrozumie o co mi chodzi smile.gif
Evinek
W jQuery możesz takie coś zrobić. Jako, że sam nie ogarniam do końca tego to dam Ci tylko funkcje które należy użyć.

$('.najedz.crew1, .najedz.crew2') - bodajże tak powinno być (wybranie crew1 i 2).
Później funkcje hover: $('...').hover(...)
I w tym hover wykonać operacje które się chce.

http://api.jquery.com/hover/
Daimos
Do takiego selektora, możesz dopisać klasę i zrobić animację, jeśli zainteresuje Cię jQuery UI, jeśli nie, to zostaje funkcja animation

  1. $('tr.najedz td.crew1, tr.najedz td.crew2').hover(function(){
  2. $(this).addClass('klasaponajechaniu', 1000);
  3. }, function(){
  4. $(this).removeClass('klasaponajechaniu', 100);
  5. });


Cytat
A nie lepiej użyć hower w CSS?

Nie lepiej, nawet jak nie trzeba animacji, hovery na innych elementach niż linki, sypią się w starych IE
crew123
zrobiłem tak:

  1. <script type="text/javascript">
  2. $(document).ready(function() {
  3. $('tr.najedz td.row_crew_1_odp, tr.najedz td.row_crew_1_last').hover(function(){
  4. $(this).stop().animate({ opacity: 1.0 }, 500);
  5. }, function(){
  6. $(this).stop().animate({ opacity: 0.5 }, 500);
  7. });
  8. });
  9.  


i nie działa sad.gif

PS. Dziala tylko jak najade na poszegolne divy (row_crew_1_odp i row_crew_1_last)
by_ikar
Hover w css, działa tylko dla konkretnego elementu, lub dzieci elementu. Jeżeli byś chciał aby coś się zmieniało w divie, który jest poza elementem, wówczas coś takiego ci nie zadziała, i będziesz musiał bawić się w javascript. Dla elementów dzieci, wystarczy że po hover, podasz element, jego identyfikator, lub jego klasę.
crew123
daloby rade cos skombinowac aby to dziaało?

Albo zrobic na klase tr.najedz i jakas funkcja zeby nie dzialalo tylko an diva crew_cos_tam
neotorrent
Chyba chodziło Ci o FadeIn z jquery.
crew123
z tym FideIn chodzilo ale opacity nie wracalo znowu na 0.5 probowalem cos z fideOut ale nic nie wychodzilo ;/
crocodillo
Cytat(crew123 @ 25.02.2012, 12:24:45 ) *
chce aby to się ładnie animowało inaczej bym nie pisał smile.gif

css3: transition

ale żeby osiągnąć dokładnie to czego oczekujesz, tzn po najechaniu na <tr> zmienia się przeźroczystość w innych elementach (nie dzieciach), możesz zrobić tylko za pomocą js
crew123
up. nie pomogło mi to...
JustHuman4
CSS3 transitions
crew123
Cytat(crocodillo @ 25.02.2012, 20:46:45 ) *
ale żeby osiągnąć dokładnie to czego oczekujesz, tzn po najechaniu na <tr> zmienia się przeźroczystość w innych elementach (nie dzieciach), możesz zrobić tylko za pomocą js


up
Necsord
http://jsfiddle.net/2E49N/1/
Usuń co zbędne. I to raczej powinien być dział poszukuje niż przedszkole bo to gotowiec.
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.