Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V   1 2 >  
Reply to this topicStart new topic
> [HTML][CSS]Podświetlenie
ksaw
post 2.08.2010, 17:06:51
Post #1





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 1.02.2009

Ostrzeżenie: (0%)
-----


Witam
Mam trywialny problem, z którym jakoś nie mogę sobię poradzić smile.gif
Mam dwie tabelki oparte na divach. Jak zrobić aby po najechaniu kursorem na wiersz w pierwszej tabelce podświetlił się wiersz w drugiej tabeli (równocześnie)?
Go to the top of the page
+Quote Post
pedro84
post 2.08.2010, 18:29:11
Post #2





Grupa: Nieautoryzowani
Postów: 2 249
Pomógł: 305
Dołączył: 2.10.2006

Ostrzeżenie: (0%)
-----


Możesz pokazać kod? Bo jakoś ciężko mi wyobrazić sobie głupotę pt. tabelki oparte na divach winksmiley.jpg


--------------------
Google knows the answer...
Go to the top of the page
+Quote Post
thomson89
post 2.08.2010, 19:06:29
Post #3





Grupa: Zarejestrowani
Postów: 1 178
Pomógł: 51
Dołączył: 7.01.2009
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


Była taka nagonka, żeby nie robić stron na tabelkach. Bo tabelki służą do przedstawiania danych tabelarycznych. Teraz będzie nagonka żeby danych tabelarycznych nie przedstawiać w div'ach haha.gif

W CSS (nie działa pod IE)
  1. div:hover { background: yellow; }

  1. tr:hover { background: yellow; }


W JS, funkcją onmouseover lub łatwiej w jQuery funkcją .hover()

Ten post edytował thomson89 2.08.2010, 19:07:54


--------------------
Sklep 70%
Go to the top of the page
+Quote Post
ksaw
post 2.08.2010, 19:25:11
Post #4





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 1.02.2009

Ostrzeżenie: (0%)
-----


kod jest nie ważny, może być nawet tabelka smile.gif
podświetlenie potrafię zrobić exclamation.gif
nie wiem jak zrobić aby po najechaniu na wiersz w pierwszej tabelce zaświecił się pierwszy wiersz w drugiej tabelce która znajduję się np na dole strony smile.gif
tu mam problem !
Go to the top of the page
+Quote Post
Damonsson
post 2.08.2010, 20:03:46
Post #5





Grupa: Zarejestrowani
Postów: 2 355
Pomógł: 533
Dołączył: 15.01.2010
Skąd: Bydgoszcz

Ostrzeżenie: (0%)
-----


Jak masz je obok siebie możesz je dać do wspólnego DIVa i jemu nadać wartość xx i xx:hover na przykład z różnym opacity.
Go to the top of the page
+Quote Post
ksaw
post 2.08.2010, 20:36:08
Post #6





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 1.02.2009

Ostrzeżenie: (0%)
-----


no właśnie problem jest w tym że są w zupełnie innym miejscu !
Go to the top of the page
+Quote Post
cniak
post 2.08.2010, 21:35:12
Post #7





Grupa: Zarejestrowani
Postów: 169
Pomógł: 12
Dołączył: 16.09.2009

Ostrzeżenie: (0%)
-----


dodaj do w pierwszej i drugiej tabelce takie same id i powinno dzialac, nadaj im hover
Go to the top of the page
+Quote Post
thomson89
post 2.08.2010, 21:44:06
Post #8





Grupa: Zarejestrowani
Postów: 1 178
Pomógł: 51
Dołączył: 7.01.2009
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


Nie id, a class.


--------------------
Sklep 70%
Go to the top of the page
+Quote Post
ksaw
post 2.08.2010, 22:39:33
Post #9





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 1.02.2009

Ostrzeżenie: (0%)
-----


a może jakiś przykład ? smile.gif
Go to the top of the page
+Quote Post
thomson89
post 2.08.2010, 22:48:18
Post #10





Grupa: Zarejestrowani
Postów: 1 178
Pomógł: 51
Dołączył: 7.01.2009
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


  1. <tr><td id="jeden" class="jeden">Tekst</td></tr>
  2. <tr><td class="jeden">Tekst 2</td></tr>


[JAVASCRIPT] pobierz, plaintext
  1. $(document).ready(function(){
  2.  
  3. $('#jeden').hover(function(){
  4. $('.jeden').css('background', 'yellow');
  5. }),
  6. function(){
  7. $('.jeden').css('background', 'white');
  8. })
  9.  
  10. })
[JAVASCRIPT] pobierz, plaintext


Powinno działać.

Ten post edytował thomson89 2.08.2010, 22:48:29


--------------------
Sklep 70%
Go to the top of the page
+Quote Post
ksaw
post 3.08.2010, 12:08:17
Post #11





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 1.02.2009

Ostrzeżenie: (0%)
-----


dzięki, ale coś nie za bardzo hula :/
Go to the top of the page
+Quote Post
thomson89
post 3.08.2010, 12:09:27
Post #12





Grupa: Zarejestrowani
Postów: 1 178
Pomógł: 51
Dołączył: 7.01.2009
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


A bibliotekę jQuery dołączyłeś? biggrin.gif


--------------------
Sklep 70%
Go to the top of the page
+Quote Post
ksaw
post 3.08.2010, 12:22:44
Post #13





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 1.02.2009

Ostrzeżenie: (0%)
-----


podpiąłem smile.gif bez zmian
Go to the top of the page
+Quote Post
thomson89
post 3.08.2010, 12:31:38
Post #14





Grupa: Zarejestrowani
Postów: 1 178
Pomógł: 51
Dołączył: 7.01.2009
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


Mała literówka.

[JAVASCRIPT] pobierz, plaintext
  1. $(document).ready(function(){
  2.  
  3. $('#jeden').hover(function(){
  4. $('.jeden').css('background', 'yellow');
  5. }, //tu był nawias i to powodowało błąd
  6. function(){
  7. $('.jeden').css('background', 'white');
  8. })
  9.  
  10.  
  11.  
  12. })
[JAVASCRIPT] pobierz, plaintext


--------------------
Sklep 70%
Go to the top of the page
+Quote Post
ksaw
post 3.08.2010, 13:00:40
Post #15





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 1.02.2009

Ostrzeżenie: (0%)
-----


ok hula smile.gif
to jeszcze jedno pytanko!, a jak mam więcej wierszy np w pierwszej tabeli mam 5 i w drugiej tabeli mam 5, i teraz chciałbym aby
po najechaniu na 1-szy wiersz podświetlił się 1-szy wiersz w tabeli drugiej, 2 - 2, 3 - 3 itp.
Go to the top of the page
+Quote Post
thomson89
post 3.08.2010, 13:14:52
Post #16





Grupa: Zarejestrowani
Postów: 1 178
Pomógł: 51
Dołączył: 7.01.2009
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


Możesz analogicznie kopiować, lub załatwić to funkcją.

  1. <tr><td id="jeden" class="jeden">Tekst</td> <td id="dwa" class="jeden">Tekst</td> <td id="trzy" class="jeden">Tekst</td></tr>
  2. <tr><td class="jeden">Tekst 2</td> <td class="dwa">Tekst 2</td> <td class="trzy">Tekst 2</td></tr>


I w skrypcie, kopiujesz to co jest w document ready i powielasz zmieniając id i class.

[JAVASCRIPT] pobierz, plaintext
  1. $(document).ready(function(){
  2.  
  3. $('#jeden').hover(function(){
  4. $('.jeden').css('background', 'yellow');
  5. },
  6. function(){
  7. $('.jeden').css('background', 'white');
  8. })
  9.  
  10. $('#dwa').hover(function(){
  11. $('.dwa').css('background', 'yellow');
  12. },
  13. function(){
  14. $('.dwa').css('background', 'white');
  15. })
  16.  
  17.  
  18. })
[JAVASCRIPT] pobierz, plaintext


Ten post edytował thomson89 3.08.2010, 13:15:49


--------------------
Sklep 70%
Go to the top of the page
+Quote Post
ksaw
post 3.08.2010, 13:35:41
Post #17





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 1.02.2009

Ostrzeżenie: (0%)
-----


domyśliłem się że można analogicznie skopiować kod smile.gif
mnie bardziej interesuje rozwiązanie troszkę bardziej skomplikowane, bo przecież jak będę mieć 50 wierszy to będzie mały problem !
Go to the top of the page
+Quote Post
everth
post 3.08.2010, 13:59:52
Post #18





Grupa: Zarejestrowani
Postów: 782
Pomógł: 153
Dołączył: 21.07.2010

Ostrzeżenie: (0%)
-----


Przy założeniu że tabele mają tę samą ilość wierszy:
[JAVASCRIPT] pobierz, plaintext
  1. tabela1 = $('#tabela1 tr');
  2. tabela2 = $('#tabela2 tr');
  3.  
  4. tabela1.hover(function(){ //twoje wiersze w piersze
  5. tabela2.eq($(this).index()).addClass('highlight'); //klasa highlight w której definiujesz styl podświetlenia
  6. function(){
  7. tabela2.eq($(this).index()).removeClass('highlight');
  8. });
[JAVASCRIPT] pobierz, plaintext


--------------------
Już mi się ani wiedzieć, ani tym bardziej myśleć nie chce.
[Think different]!
Go to the top of the page
+Quote Post
ksaw
post 3.08.2010, 15:30:37
Post #19





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 1.02.2009

Ostrzeżenie: (0%)
-----


nie wiem, chyba jestem jakiś upośledzony winksmiley.jpg
albo oba wiersze w obydwu tabelach się podświetlają albo w ogóle nic się z nimi nie dzieje ! :/
Go to the top of the page
+Quote Post
everth
post 3.08.2010, 17:19:56
Post #20





Grupa: Zarejestrowani
Postów: 782
Pomógł: 153
Dołączył: 21.07.2010

Ostrzeżenie: (0%)
-----


Ech, w skrypcie jest błąd:
[JAVASCRIPT] pobierz, plaintext
  1. tabela1 = $('#tabela1 tr'); //definiuje wszystkie wiersze w pierwszej tabeli (masz to na divach - nie wiem co stosujesz zamiast 'tr')
  2. tabela2 = $('#tabela2 tr'); //jak wyżej
  3.  
  4. tabela1.hover(
  5. function(){
  6. $(this).addClass('highlight'); //podswietla najechany element w tabeli 1
  7. tabela2.eq($(this).index()).addClass('highlight'); // podswietla odpowiadający element w drugiej tabeli
  8. },
  9. function(){ //usuwa podświetlenie
  10. $(this).removeClass('highlight');
  11. tabela2.eq($(this).index()).removeClass('highlight');
  12. }
  13. );
  14.  
  15. // I na odwrót
  16.  
  17. tabela2.hover(
  18. function(){ //twoje wiersze w piersze
  19. $(this).addClass('highlight'); //podswietla najechany element w tabeli 1
  20. tabela1.eq($(this).index()).addClass('highlight'); // podswietla odpowiadający element w drugiej tabeli
  21. },
  22. function(){ //usuwa podświetlenie
  23. $(this).removeClass('highlight');
  24. tabela1.eq($(this).index()).removeClass('highlight');
  25. }
  26. );
[JAVASCRIPT] pobierz, plaintext


Ten post edytował everth 3.08.2010, 17:41:14


--------------------
Już mi się ani wiedzieć, ani tym bardziej myśleć nie chce.
[Think different]!
Go to the top of the page
+Quote Post

2 Stron V   1 2 >
Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 20.07.2025 - 07:06