seltsam_mit_hut
Mitglied
Hallo,
Folgendes Problem. Hab ein selbstprogrammiertes Forum, was auch alles funktioniert, bis auf eine Tatsache das wenn ich jetzt einen Beitrag zitieren will und danach noch einen "Spoiler" Text anhänge, funktioniert der "Spoiler" Befehl nicht mehr (lässt sich weder öffnen noch schließen). Wenn ich jetzt einen Beitrag verfassen würde ohne Zitat funktioniert der Spoiler ohne Probleme.
Das interessante ist, wenn ich das div id="blockqoute" weggebe beim Zitat dann funktioniert der Spoiler. Auch wenn das div alleine dort stehen würde, würde es nicht gehen! Also der Inhalt blockqoute ist nicht ausschlaggebend.
Kann mir jemand erklären wieso es nicht funktioniert? Oder sehe ich den Wald vor lauter Bäumen nicht mehr? Bin echt ratlos und wäre für eure Hilfe echt dankbar!
Zitat Ausgabe:
Spoiler Ausgabe:
Folgendes Problem. Hab ein selbstprogrammiertes Forum, was auch alles funktioniert, bis auf eine Tatsache das wenn ich jetzt einen Beitrag zitieren will und danach noch einen "Spoiler" Text anhänge, funktioniert der "Spoiler" Befehl nicht mehr (lässt sich weder öffnen noch schließen). Wenn ich jetzt einen Beitrag verfassen würde ohne Zitat funktioniert der Spoiler ohne Probleme.
Das interessante ist, wenn ich das div id="blockqoute" weggebe beim Zitat dann funktioniert der Spoiler. Auch wenn das div alleine dort stehen würde, würde es nicht gehen! Also der Inhalt blockqoute ist nicht ausschlaggebend.
Kann mir jemand erklären wieso es nicht funktioniert? Oder sehe ich den Wald vor lauter Bäumen nicht mehr? Bin echt ratlos und wäre für eure Hilfe echt dankbar!
Zitat Ausgabe:
PHP:
$out = preg_replace('#\[zitat\](.+?)\[/zitat\]#is','<div id="blockquote">\\1</div>',$out);
Spoiler Ausgabe:
PHP:
$out = preg_replace("#\[spoiler\](.+?)\[/spoiler\]#is","
<div style=\"padding:2px\">
<input type=\"button\" value=\"Spoiler öffnen\" style=\"width:90px;margin:0px;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 = 'Spoiler schließen'; } else { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = 'none'; this.innerText = ''; this.value = 'Spoiler öffnen'; }\">
</div>
<div style=\"margin: 0px; padding: 5px;\">
<div style=\"display: none;\">
<i>\\1</i>
</div>
</div>
",$out);