2012-10-18 18 views
12

ho visto un paio di argomenti simili, che ci hanno aiutato, ma ho problema specifico e non sono riuscito a risolverlo da solo così se qualcuno può dare una mano lo apprezzereiAggiunta di un evento onclick a un elemento div

voglio aggiungere onclick evento a un elemento div.

HTML:

<div id="thumb0" class="thumbs" onclick="klikaj('rad1')"></div> 

JavaScript:

function klikaj(i) 
{ 
    document.getElementById(i).style.visibility='visible'; 
} 

risultato voluto: div con id = "rad1" (che è nascosto) diventa visibile, quando si fa clic sul div con id = "thumb0" .

Questo funziona quando lo aggiungo a un elemento del pulsante ma non so come va con gli elementi div.

+0

Stai cercando di fare clic su un div vuoto? – Musa

+0

È possibile che il tuo div sia nascosto tramite "display: none" piuttosto che con la visibilità: regola nascosta? –

+0

Sì, fondamentalmente è vuoto, ma ha un'immagine di sfondo aggiunta con css. Quindi sto cercando di fare clic su un'immagine. – Slovenec

risposta

15

Non sono sicuro di quale sia il problema; l'esecuzione dei lavori di seguito come previsto:

<div id="thumb0" class="thumbs" onclick="klikaj('rad1')">knock knock</div> 
​<div id="rad1" style="visibility: hidden">hello world</div>​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​ 
<script> 
function klikaj(i) { 
    document.getElementById(i).style.visibility='visible'; 
} 
</script> 

Vedi anche: http://jsfiddle.net/5tD4P/

+0

Sì, ma entrambi i div hanno l'immagine di sfondo assegnata in css. Forse funzionerebbe come hai provato ora solo se uso il tag img in html invece di background-image ?! – Slovenec

+0

@Slovenec se si utilizzano immagini di sfondo, è necessario controllare all'interno del gestore di clic * dove * l'utente ha fatto clic per prendere una decisione; i normali tag '' funzionerebbero meglio ovviamente. –

0

Penso Si utilizza //--style="display:none"--// per nascondere il div.

di questo codice:

<script> 
    function klikaj(i) { 
     document.getElementById(i).style.display = 'block'; 
    } 
</script> 
<div id="thumb0" class="thumbs" onclick="klikaj('rad1')">Click Me..!</div> 
<div id="rad1" class="thumbs" style="display:none">Helloooooo</div> 
0

Dipende nel modo in cui si nasconde il tuo div, diplay = none è diversa visibilità = nascosti e l'opacità = 0

Visibilità quindi utilizzare ... stile. visibility = 'visible' Mostra quindi usa ... style.display = 'block' (o altri dipende da come si imposta ur css, inline, inline-block, flex ...) Opacity quindi usare ... style.opacity = '1';

Problemi correlati