Kezdőoldal » Számítástechnika » Weblapkészítés » JSben megoldás (szétvet az ideg)?

JSben megoldás (szétvet az ideg)?

Figyelt kérdés

Valaki legyen olyan kedves, és segítsen nekem!

[link]


EZ az effekt kell (nem másik, nem hasonló), viszont azt akarom, hogy a "Kinyit" és "Bezár" gomb ne ehhez a divhez legyen kapcsolódva, hanem pl rakok egy gombot valahova, ami fel-le nyitogatja. Nagyon(!) kezdő JSes vagyok, egész napom elment rá, hogy megcsináljam, de semmire nem jutottam...


Nagyon szépen kérek valakit, hogy segítsen!



2013. márc. 31. 23:13
1 2
 1/12 A kérdező kommentje:
a linken jobb felül van a gomb
2013. márc. 31. 23:15
 2/12 anonim ***** válasza:

[link]


Fent elhelyezel egy DIV -et, aminek style értéke display:none;

Ezt a DIV -et .toggle() -el nyitod zárod.

2013. márc. 31. 23:45
Hasznos számodra ez a válasz?
 3/12 anonim ***** válasza:
2013. márc. 31. 23:49
Hasznos számodra ez a válasz?
 4/12 anonim ***** válasza:
A használatot és a linkelendő fájlokat a plugin honlapjáról vagy a példa head-jéből lesd ki. A többiek jól mondják a toggle-t. Azt annak az elemnek az onclick-jébe tedd be, amivel nyitni-zárni akarod.
2013. ápr. 1. 00:23
Hasznos számodra ez a válasz?
 5/12 A kérdező kommentje:

Köszönöm szépen!


function valami() {

$("p").slideToggle("slow");

};


ezzel próbálkozok, hogyan lehet megcsinálni, hogy ne <p>t hanem egész divet mozgasson?

2013. ápr. 1. 00:27
 6/12 A kérdező kommentje:

Sikerült! Köszönöm szépen!

Azt valaki nem tudja, hogy azt hogyan tudom lekérni hogy le van e nyitva?


Több menü is lesz és úgy akarom, hogy ha megnyitja az egyiket, akkor csak lejön a div, de ha megnyit egy másikat, akkor előbb csukja vissza és nyissa le újra.

2013. ápr. 1. 00:42
 7/12 anonim ***** válasza:

Tegyél be egy változót, amiben eltárolod az aktuális állapotot.

A jquery oldalon ott egy példa, hogy mi az ekvivalens a toogle kóddal.

Na olyasmit, csak persze a "showOrHide" változó értékét is változtasd.

2013. ápr. 1. 02:14
Hasznos számodra ez a válasz?
 8/12 anonim ***** válasza:

Elég az elem css display tulajdonságát ellenőrizni, ha jól emlékszem.

checkToggle = $(#valami).css('display');

if(checkToggle == 'none'){

// ha nincs lenyitva...

}

else{

// egyébként...

}


Szvsz a legjobb az lenne, ha kicsit ismerkednél a jQuery-vel, mert ha kicsit tanulmányoznád, akkor ezek a dolgok nagyon könnyen mennének

2013. ápr. 1. 14:17
Hasznos számodra ez a válasz?
 9/12 anonim ***** válasza:

"Több menü is lesz és úgy akarom, hogy ha megnyitja az egyiket, akkor csak lejön a div, de ha megnyit egy másikat, akkor előbb csukja vissza és nyissa le újra."


Az összes ilyen div-nek ugyanazt a classt adjad, utána használd ki JQuery azon tulajdonságát, hogy tud elemeknek spéci attributumokat adni.

Amikor megnyitsz egy ilyen div-et, állítsd be ezt: $(this).attr("lathato", "igen");


Majd amikor egy másikat nyitsz meg, az összes ilyen "lathato" div-et tuntesd el, majd jelenítsd meg ami neked kell.


Ez kb így fog kinézni:

HTML:

<div id="menu1" class="legördülőmenü">valami1</div>

<div id="menu2" class="legördülőmenü">valami2</div>

<div id="menu3" class="legördülőmenü">valami3</div>

<a href="#menu1" class="legördülőmenüLink">click 1</a>

<a href="#menu2" class="legördülőmenüLink">click 2</a>

<a href="#menu3" class="legördülőmenüLink">click 3</a>


CSS:

div.legördülőmenü { display: none; }


JS:


var aktMenu;

$("div.legödrülőmenüLink").on("click", function(event){

event.preventDefault();

aktMenu = $(this).attr("href");

$('div.legördülőmenü[lathato="igen"]').slideUp("slow", function(){

$(this).attr("lathato", "nem"); // beállítja, hogy nem látható a menü

$(aktMenu).slideDown("slow", function(){

$(this).attr("lathato", "igen");

});

});

});


"legödrülőmenü" helyett valami html szabvány nevet használva persze.

2013. ápr. 1. 20:08
Hasznos számodra ez a válasz?
 10/12 anonim ***** válasza:
hoppá, $("div.legödrülőmenüLink") helyett $("a.legödrülőmenüLink")
2013. ápr. 1. 20:08
Hasznos számodra ez a válasz?
1 2

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!