Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JS/CSS] zmiana w stylu
zuraw84
post 9.10.2007, 09:19:45
Post #1





Grupa: Zarejestrowani
Postów: 42
Pomógł: 0
Dołączył: 9.02.2005

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


witam,
mam klase css

  1. .klasa{
  2. border: 0px;
  3. }


i jakies pole

  1. <input type="text" class="klasa" />


potrzebuje teraz przez javascript zmienic w klasie css wartosc border powiedzmy na 1px
i teraz tak:
to jest tylko porsty przyklad czego potrzebuje,musze to zmienic w klasie css
bo tych elementow ktore kozystaja z tej klasy jest duzo ... i ciezko by bylo sie
po nich iterowac
czy jest wogole mozliwosc edycji klas css przez javascript ?

dzieki za pomoc
Go to the top of the page
+Quote Post
nospor
post 9.10.2007, 09:27:27
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




style.border=.... :
  1. <input id="test" class="klasa"/>
  2. <a href="#" onclick="document.getElementById('test').style.border='1px solid black';return false;">zmien border</a>


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
zuraw84
post 9.10.2007, 09:39:15
Post #3





Grupa: Zarejestrowani
Postów: 42
Pomógł: 0
Dołączył: 9.02.2005

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


Cytat(nospor @ 9.10.2007, 08:27:27 ) *
style.border=.... :
  1. <input id="test" class="klasa"/>
  2. <a href="#" onclick="document.getElementById('test').style.border='1px solid black';return false;">zmien border</a>


ok, ale tego wlasnie chcialem uniknac
bo majac 1000 elementow musial bym kazdemu id nadawac
a jak bym mogl dostac sie do klasy css zmienil bym to tylko w jednym miejscu
Go to the top of the page
+Quote Post
jarrod
post 9.10.2007, 10:13:31
Post #4





Grupa: Zarejestrowani
Postów: 312
Pomógł: 9
Dołączył: 14.10.2006
Skąd: warszawa

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


No to masz problem...
Nie zmienisz zawartości arkusza tak aby wszystkie elementy przyjęły nową wartość.
Nadaj każdemu z grupy elementów taki sam atrybut np rel

Teraz napisz skrypt JS który zmieni właściwość dla każdego elementu który ma rel o jakiejśtam wartości np:

  1. <script type="text/javascript">
  2. function _zmien()
  3. {
  4. var kolekcja = document.getElementsByTagName('input');
  5. for(i=0;i<kolekcja.length;i++)
  6. {
  7. if( kolekcja[i].getAttribute('rel') == 'abc' )
  8. {
  9. kolekcja[i].style.border = '1px #c00 solid';
  10. }
  11. }
  12. }
  13.  
  14. <input type="text" name="jeden" rel="abc" onfocus="_zmien()" />
  15. <input type="text" name="dwa" rel="abc" onfocus="_zmien()"/>


Tu masz taki mały przykład. Pisany z palca więc może coś nie działać ale coś w tym kierunku.
Go to the top of the page
+Quote Post
zuraw84
post 9.10.2007, 10:52:36
Post #5





Grupa: Zarejestrowani
Postów: 42
Pomógł: 0
Dołączył: 9.02.2005

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


oki,
wielkie dzieki za przyklad
szkoda ze nie mozna arkusza edytowac,
tak sadzilem ze tego nie da sie inaczej zrobic niz iteracja po elementach
dzieki

Ten post edytował zuraw84 9.10.2007, 10:53:46
Go to the top of the page
+Quote Post
nevt
post 9.10.2007, 11:06:44
Post #6





Grupa: Przyjaciele php.pl
Postów: 1 595
Pomógł: 282
Dołączył: 24.09.2007
Skąd: Reda, Pomorskie.

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


Możesz przygotować kilka wersji arkusza i w JavaScript decydować która wersja ma się załadować dla stronki... Ale to zadziała tylko przy ładowaniu stronki...

Pozdrawiam.


--------------------

-
Oh no, my young coder. You will find that it is you who are mistaken, about a great many things... -
Go to the top of the page
+Quote Post
vokiel
post 9.10.2007, 11:13:55
Post #7





Grupa: Zarejestrowani
Postów: 2 592
Pomógł: 445
Dołączył: 12.03.2007

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


Żeby było można zmienić inne właściwości i nie grzebać potem w js proponuję zrobić tak:
  1. .klasa{
  2. border: 0px;
  3. }
  4. .klasa_po_zmianie{
  5. border: 0px;
  6. }


a w js od jarrod
  1. kolekcja[i].className = "klasa_po_zmianie";


Wtedy będzie łatwiej dokonać jakiś zmian w wyglądzie.

btw @jarrod niezły pomysł, i like it smile.gif


--------------------
Go to the top of the page
+Quote Post

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: 15.07.2025 - 07:22