Slėpti / rodyti elementą su logotipu

Paprastai mano kode yra daug dalykų

 if(shouldElementBeVisible) $element.show() else $element.hide() 

Ar yra dar elegantiškesnis būdas „JavaScript“, „jquery“ ar „paryškinti“? Idealiu atveju noriu kažko panašaus.

 $element.showOrHideDependingOn(shouldElementBeVisible) 
68
14 янв. nustatė Aakil Fernandes , sausio 14 d 2015-01-14 21:41 '15, 21:41 pm 2015-01-14 21:41
@ 4 atsakymai

Matyt, galite tiesiog perduoti Būlio vertę į toggle funkciją.

 $element.toggle(shouldElementBeVisible) 
110
14 янв. Atsakymą pateikė Aakil Fernandes sausio 14 d. 2015-01-14 21:59 '15, 21:59 pm 2015-01-14 21:59

Taip yra!

 $element.toggle(); 

Be jokių parametrų, toggle paprasčiausiai perjungia elementų matomumą (nereiškia visibility savybės) ir priklauso nuo esamos elemento būklės.

border=0
 $element.toggle(display); 

Jei skambinate toggle su loginiu parametru, elementas rodomas, jei jis yra true ir hidden , jei jis yra false

šaltinis

4
14 янв. atsakymą pateikė Zach Spencer, sausio 14 d 2015-01-14 21:43 '15 - 21:43 2015-01-14 21:43

jQuery turi toggle : http://api.jquery.com/toggle/

$element.toggle();

Tai parodys elementą, jei jis bus paslėptas, ir paslėpti, jei jis bus rodomas.

2
14 янв. Atsakymą pateikė Mike sausio 14 d. 2015-01-14 21:44 '15, 21:44 2015-01-14 21:44

.toggle() funkcija keičia display elementą.

Jei norite pakeisti visibility , siūlau vietoj to naudoti ?: Operator. Norėdami tai padaryti, nustatykite savo CSS matomumą į pradinę būseną ir JS tiesiog įdėkite:

  var checkboxChecked = $("#yourCheckbox").(":checked"); $("#yourElement").css("visibility", checkboxChecked ? "visible" : "hidden"); 
0
03 февр. Atsakymas pateikiamas Mel 03 vasario mėn. 2017-02-03 13:57 '17 at 13:57 2017-02-03 13:57