Domanda

Il mio editor è Tinymce4 +. Funziona molto nella maggior parte delle parti.

Ma non importa cosa faccio, c'è qualcosa che non riesco a fare. - Modalità editor di commutazione all'istante. -

Ho una pagina che gli utenti possono selezionare un dato e modificarlo e visualizzare il contenuto. Gli utenti fanno clic su un pulsante denominato "ViewMode", l'altro flipside è "EDITMode"

L'ho raggiunto mettendo due generatori di generatori in uno stesso contenitore, rendendo uno dei quali invisibili dagli utenti di Start-Look-Impostazioni che gli utenti hanno scelto. Un DIV ha TinyMCE Editor, il tag Iframe e un altro ha solo un sacco di valori HTML che l'editor è in possesso. Ma l'effetto collaterale di questo è che lo stile del contenuto potrebbe sembrare diverso, a seconda degli attributi di stile.

Questa applicazione web sto parlando ora è un sistema esistente che ha i suoi generatori di generazioneGodes. È così complicato che una volta arrivato a guardarlo, potresti voler scappare da esso.

Quindi vorrei evitare questa discrepanza DIV rendendo editor dinamicamente commutabile su entrambi i modi.

Caricamento di più oggetti TinyMCE è l'ultima cosa di cui ho bisogno qui.


.

Posso effettuare l'editor disabilitando impostando un attributo - CSS - Ma poi gli elementi della barra degli strumenti diventano cattivi ragazzi qui. perché funzionano ancora. Nascondo la barra degli strumenti stessa per completare questa missione.

Ma tu sai, il mio cliente lo ha odiato e mi ha insistito che l'editor dovrebbe fornire un pulsante di stampa nel suo mirino. Questo è frustrante.

Quindi, se potessi solo darmi un'idea di come manipolare gli elementi della barra degli strumenti, quindi penso di poter risolvere questo problema.

Se è troppo difficile, allegando l'ascoltatore dell'evento di stampa a un elemento esterno potrebbe anche essere la seconda migliore opzione per me. Perché da quel momento in poi, lancio via la barra degli strumenti e fai un'icona di stampa sulla parte superiore dell'editor e allega l'evento ad esso.

Scusa per digitare tutti i testi semplici. Ma il problema come questo non richiede codici, penso. Spero che il Guru Tinymce si fermi e mi aiuti.

È stato utile?

Soluzione

Infine, ho reso il mio editor commutabile.

Primo passo è nascondere tutti gli elementi nella barra degli strumenti di tinyMCE.

Barre degli strumenti tinyMCE hanno un nome di classe specifico in modo che siano selezionabili con il selettore di classe jQuery. Ma selezionare il nome della classe da solo provoca anche le barre degli strumenti indesiderate, quindi devi stare attento con questo.

API FYI .eq() potrebbe aiutarti.

Dopo aver nascosto tutti gli elementi nella barra degli strumenti, (non nascondere la barra degli strumenti a proposito.) Fai questo.

tinymce.ui.Factory.create({
    type: 'button',
    cmd: 'mcePrint',
    icon: 'print',
    shortcut: 'Ctrl+P',
    class : 'temp'
}).renderTo(appendTarget);
.

Questo aggiungerà un elemento pulsante nella barra degli strumenti.

Ma in qualche modo non invoca il comando che ho definito nel valore del cmd.

Pertanto Allegare questo evento al pulsante sarà richiesto manualmente.

tinymce.activeEditor.execCommand('mcePrint');
.

Finora ho creato una barra degli strumenti personalizzata per l'editor della modalità di visualizzazione. Ora è il momento di congelare il campo contenuto effettivo dell'edio.

È molto facile dopo aver ottenuto i contenuti IFRAME come oggetto jQuery.

L'API .contents() dovrebbe aiutarti.

Successivamente, è possibile selezionare l'elemento <BODY> dal tuo lato, quindi l'ultima cosa da cui fare è dare un attributo e il valore "ContentoDabilitable= False" e valore al tag del corpo.

Allora il tuo editor si blocca.

Tornando anche alla modalità di modifica è facile. Basta fare il backwards.

Richiama questi eventi quando fai clic sul proprio pulsante "Switch". Quindi è possibile attivare il tuo editor da View-mode alla modalità di modifica (e anche il modo Oppsite).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top