HTML:Solo genitore target con event.target?
<div onclick="doSomething()" id="parent">
<div id="child"></div>
</div>
CSS:
#parent {
background-color: blue;
width: 100%;
height: 100px;
}
#child {
background-color: green;
width: 50%;
height: inherit;
}
.myClass {
background-color: red !important;
}
JS:
function doSomething() {
event.target.className = ('myClass');
}
Come si può vedere nel this JSFIDDLE, dopo aver fatto clic il bambino, invece di applicare la classe al genitore che attiva la funzione, la applica al bambino. Voglio sapere come evitare questo e applicarlo al genitore, non importa dove faccio clic all'interno di esso. Sto cercando di evitare l'uso del metodo document.getElement(s)ByClass/Id
.
Qualche aiuto?
P.S.Mi piace rispondere a queste domande –
Bene, 'event.target' non fa riferimento all'elemento su cui è stato installato il gestore, ma all'elemento su cui è stato attivato l'evento. È così che funziona. Se non lo vuoi, non usare 'event.target' (ma piuttosto' this' o 'event.currentTarget' o qualsiasi altra cosa) – Bergi