HTML:
<div style="margin:20px; margin-top:5px">
<div class="quotetitle">
<b>Tonen: </b>
<input type="button" value="uit" style="width:50px;font-size:10px;margin:1px;padding:0px;" onclick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display != '') { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = ''; this.innerText = ''; this.value = 'aan'; } else { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = 'none'; this.innerText = ''; this.value = 'uit'; }" />
</div>
<div class="quotecontent">
<div style="display: none;">{{{}}}
Een lange tekst die te verbergen is
</div>
</div>
</div>
Als ik deze code in IE uitvoer, dan veranderd de tekst van het button van 'uit' naar 'aan' naar 'uit' bij elke klik, maar als ik deze code in Chrome uitvoer dan blijft de tekst bij elke klik op 'uit' staan. Kijk ik bij Chrome bij de developer tools deze foutmelding: "Uncaught Error: NO_MODIFICATION_ALLOWED_ERR: DOM Exception 7" Deze staat op de locatie van de {{{}}} in de HTMLcode hierboven.
Weet iemand hoe ik de bovenstaande code wel (foutloos) kan laten uitvoeren, zodat hij op elke (javascript ondersteunende) browser werkt?