Comment puis-je changer la propriété CSS “display” en javascript
Comment puis-je changer la propriété CSS display
, en JavaScript, de display:none
à display:normal
pour ces divs?
#hide_0 { display:none }
#hide_1 { display:none }
#hide_2 { display:none }
#hide_3 { display:none }
#hide_4 { display:none }
#hide_5 { display:none }
Un seul à la fois. J'ai besoin de l'afficher et de masquer le reste.
Ce que j'ai utilisé:
var persistent_element='hide_1';
function link_update(link_display)
{
var local_element;
local_element=document.getElementById(persistent_element);
local_element.style.display='none';
local_element=document.getElementById(link_display);
local_element.style.display='block';
persistent_element=link_display;
}
Comment je l'ai connecté : m4 est une compacte - se connecte onclick de ces méthodes
m4('l1',function {return link_update(hide_1);});
m4('l2',function {return link_update(hide_2);});
m4('l3',function {return link_update(hide_3);});
m4('l4',function {return link_update(hide_4);});
m4('l5',function {return link_update(hide_5);});
m4('l6',function {return link_update(hide_6);});
Notez que “
Points pour tout le monde qui n'a pas dit "il suffit d'UTILISER JQUERY!!!111"
Je suis d'accord, il est bon de répondre JS questions sans jQuery (lorsque l'OP n'est pas parler de jQuery), mais il serait vraiment faire de cette manière beaucoup plus facile!
vous écrivez
normal
” n'est pas une valeur valide pour le CSS display
propriété.Points pour tout le monde qui n'a pas dit "il suffit d'UTILISER JQUERY!!!111"
Je suis d'accord, il est bon de répondre JS questions sans jQuery (lorsque l'OP n'est pas parler de jQuery), mais il serait vraiment faire de cette manière beaucoup plus facile!
vous écrivez
connects onclick
,Comment vous connecter sans montrer dans votre code html ! Vous avez défini afficher aucun tous dans votre css est ne peut pas gérer onclick [sans]
OriginalL'auteur Steve Adams | 2011-11-09
Vous devez vous connecter pour publier un commentaire.
D'utiliser le javascript pour modifier le style, vous pouvez le faire comme ceci:
Donc, si vous voulez cacher toutes et spectacle un, vous pouvez le faire avec cette fonction:
P. S.
normal
n'est pas une valeur valide pour la propriété d'affichage. Les valeurs typiques sontblock
,none
etinline
et il en existe d'autres commeinline-block
,table
, etc....J'ai ajouté un exemple de code pour ma réponse qui n'a pas besoin de cette variable. Vous venez d'appeler une fonction avec le nom de base, le nombre total d'objets et de celui que vous souhaitez afficher.
plus facile de garder une variable...merci de regarder mon montage...ce travail?
Votre code est l'idée générale, mais il semble que vous utilisez
link_hide
en un seul endroit etpersistent_element
dans un autre et vous devez attribuerpersistent_element
à la valeur que vous venez de faire visible.Il ressemble à ce que vous avez devrait fonctionner. Ma méthode ne nécessite pas de variables globales ou de tout état (c'est pourquoi j'ai écrit ça). Dans un petit projet, de façon appropriée et d'une manière unique nommé globales sont pas une grosse affaire. Dans un projet de grande envergure, globals doit être préfixée pour éviter de haut niveau les conflits de noms.
OriginalL'auteur jfriend00
Votre question n'est pas particulièrement clair, mais l'essence de ce que vous voulez faire est simple. Vous pouvez obtenir une référence à un élément du DOM qui a un
id
à l'aide degetElementById
, et vous pouvez changer ledisplay
propriété:Cependant, vous avez plusieurs élément que vous souhaitez masquer/afficher (je ne suis pas sûr de quand vous voulez le faire), de sorte qu'il peut être plus facile d'utiliser une autre méthode de sélection d'éléments (tels que des
getElementsByTagName
, ougetElementsByClassName
, mais cela dépend de votre code HTML et ce que vous êtes en train d'essayer de faire).OriginalL'auteur James Allardice
Vous pouvez définir une propriété css sur un élément à l'aide du style de méthode.
Vide est une valeur.
non, il n'est pas. Les valeurs valides sont listées dans le w3.org/TR/css3-box/#the-lsquo. Ce que vous avez si
display
ont été définies à partir d'une ligne de l'attribut style, mais pas à partir d'une feuille de style.OriginalL'auteur GAgnew