2012-11-05 4 views
1

Je veux une ombre portée à apparaître sur le clic d'une image. Je n'utilise pas Jquery pour le moment, donc si possible, fournissez une solution java-script. Heres my fiddle: http://jsfiddle.net/zUNhD/7/On-click Box shadow Shadow - Javascript (pas jquery)

Je voudrais aussi que l'ombre de boîte soit seulement active sur n'importe quel élément actuellement sélectionné. (Le dernier élément cliqué devrait être le seul à l'ombre)

window.onload = function(){ 
var box1 = document.getElementById('thumbs'); 
var box1Div1 = box1.getElementsByTagName('input'); 
var img1 = box1Div1[0] 
    console.log(img1); 

    img1.onclick = function(){ 
    img1.setAttribute("class", "BoxShadow"); 
    }; 
    }; 
+1

Comme ceci: http://jsfiddle.net/zUNhD/20/? – Passerby

+0

@Passerby Oui Merci beaucoup! Si vous voulez rediffuser cela comme une "réponse" et je vais accepter. très appréciée. – ModS

Répondre

2

Extension du commentaire:

Vous pouvez utiliser :active sélecteur pour répondre à « cliquez sur » événement et :focus sélecteur à la réponse, eh bien, " focus » événement:

input:active, input:focus{ 
    box-shadow:2px 2px 2px blue; 
} 

fiddle

1

Voir this jsfiddle pour certains de votre code simplifications. La classe css n'a pas été assignée correctement, elle devrait être précédée d'un point. Mettez votre balise script près de la fin d'une balise </body> et de l'utilisation:

var box1 = document.getElementById('thumbs'); 
var box1Div1 = box1.getElementsByTagName('input'); 
var img1 = box1Div1[0] 

img1.onclick = function(){ 
    img1.className = "DropShad"; 
}; 
2

La fonction n'a pas été appelé dans votre code.

window.onload = function(){ 
var box1 = document.getElementById('thumbs'); 
var box1Div1 = box1.getElementsByTagName('input'); 
var img1 = box1Div1[0];  
img1.onclick = function(){ 
img1.setAttribute("class", "DropShad"); 
}; 
}(); 

est ici le violon de travail ... http://jsfiddle.net/zUNhD/18/