geladen habe ich eine wählen, die eine js funtion auslösen onChange tinymce Editor zum Anzeigen/Verbergen:ausführen js Funktion nach tinymce
<select id="mySelect" onChange="myFuntion()">
<option value="1">Yes</option>
<option value="0">No</option>
Dann habe ich eine Textarea mit tinymce (auf Seite Last geladen).
<textarea class="mce" id="myTextarea"></textarea>
<script src="tinymce.js></script> // file with global tinymce.init({ ... });
Die js Funktion ist wie:
<script>
function myFuntion(){
if($('#mySelect').val() == '1') { tinymce.get('myTextarea').show(); }
else { tinymce.get('myTextarea').hide(); }
}
$(document).ready(function() { myFuntion(); }); // show/hide tinymce based on how the mySelect setting is on page load
Alles funktioniert gut, außer für die "$ (document) .ready (function() {myFuntion();});" dass throw ein Fehler "Uncaught TypeError: Kann die Eigenschaft 'show' von null nicht lesen", denke ich, weil tinymce noch nicht geladen ist.
Es gibt einen Weg, um die "Dokument-Ready-Funktion" mit sich ändern "wenn tinymce geladen> execute myFunction()"
PS: Ich benutze tinymce 4, die tinyMCE.init() ist auf einem externe Dateien und auf anderen Seiten verwendet werden, so ziehe ich sich nicht, diese Datei bearbeiten
EDIT: mein eigentliches Problem umgehen, verwenden: setTimeout (function() {myFunction();}, 1500); aber wenn es ein Rückruf oder ähnlich ist, zum Beispiel $ (document) .auf (‚tinymce: init‘) wird
danke, bereits mit "oninit" versuchen, das Problem ist, dass die tinimce.js (mit der tinymce.init() drin) von vielen Seiten verwendet wird, also wenn ich die "oninit: myfuntion" alle anderen hinzufügen Seiten wirft einen Fehler ... es gibt keinen anderen Weg? – ipel
@ipel Wenn Sie viele Seiten angeben, gehe ich davon aus, dass verschiedene Seiten vom Server gerendert werden (keine einzelne Seite mit unterschiedlichen Routen). Wenn das so ist, würden Sie oninit() auf jeder Seite haben, wo Sie die Tinymce verwenden. Es ist normal, dass Sie das Skript nicht auf eine Seite einfügen und von einer anderen Seite darauf zugreifen können, da die gesamte Seite zurückgesetzt wird, wenn Sie auf eine andere Seite zugreifen. – Trace