Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [js] chowanie divóv o określonej klasie.
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
kazag
Mam problem, otóż mam taki kod, odpowiadający za pojawianie się i chowanie diva po kliknięciu odnośnika (przerobiony skrypt):
Kod
function toggleDivOL( elemID )
{
    var elem = document.getElementById( elemID );
    if( elem.style.display != 'block' )
    {
        elem.style.display = 'block';
    }
    else
    {
        elem.style.display = 'none';
        
    }
}

Kod w odnośniku:
Kod
<a href="javascript:toggleDivOL('news');" title="Kliknij, żeby rozwinąć newsa."></a>


Chciałbym jednak, aby najpierw funkcja ta zwinęła wszystkie dotychczas rozwinięte divy, posiadające określoną klasę, np. "klasa", a dopiero później rozwinęła diva, do którego odnosi się link.
ShadowD
Jak masz diva np:

  1. <div id='news'>
  2. treść
  3. </div>


to zamieniasz go na:

  1. <div id='news' style='display:none;'>
  2. treść
  3. </div>


Możesz jeszcze nadać zamiast id to jakąś klasę i wszystkim elementom dać na raz none - Koniec... smile.gif
kazag
Wiem, że muszę nadać wszystkim none, tylko nie wiem, jak to zapisać w js, żeby każdy element o klasie "klasa" dostał display:none, a nie jeden konkretny.
nospor
uzyj jakiegos liba, np. jQuery. Wowczas kod jest banalny:
Kod
jQuery('.klasa').hide();
kazag
Właśnie o taką odpowiedz mi chodziło, dziękuje smile.gif

Btw. Można mieszać kod JQuery ze zwykłym JS w jednej funkcji?
nospor
mozna
decha-design
można nawet mieszać z innymi bibliotekami ... np. z Prototype
kazag
Dziękuje, temat do zamknięcia smile.gif
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.