2017-02-27 1 views
0

Ich habe eine benutzerdefinierte Schaltfläche erstellt, die neue div in tinymce mit einigen Stilen -Eigenschaft hinzufügen, auch wird es die vorhandenen Stile Eigenschaften eines div oder ausgewählten Knoten abrufen. Zum Einfügen neuer div habe ich die tinymce.executeCommand() verwendet. zum Ändern der vorhandenen Div-Stile, nach der Einstellung aller Attribute mit Javascript, habe ich tinymce.save() -Methode aufgerufen. Aber wenn ich den Inhalt von tinymce mit der Methode tinymce.getContent() abrufe, wird der vorherige Inhalt und nicht der aktualisierte Inhalt zurückgegeben.Stil Attribut ist nicht in tinymce aktualisiert

hier ist der Code - plugin.js

editor.addButton ('divstyles', { 
    title: 'Paragraph Styles', 
    image: icon, 
    onclick: function() { 
     // Open window 
     editor.windowManager.open({ 
      title: "Paragraph Styles (div)", 
      id: 'paragraphStyleDiv', 
      url: path, 
      width: 443, 
      buttons: [{ 
       text: 'Apply', 
       onclick: 'submit' 
      }, { 
       text: 'Cancel', 
       onclick: 'close' 
      }], 
      onsubmit: function(ed, e) { 

      var currentNode, newDiv, data, styles, node, isIgnoredTagAvailable = false, 
       ancestorNode; 

       node = tinyMCE.activeEditor.selection.getNode(); 
       setStylesProperty(node); 
       tinyMCE.activeEditor.save(); 

      } 
      tinymce.activeEditor.windowManager.close(); 
     } 
    }); 
} 

});

Kann mir jemand dabei helfen. Ich habe es gegoogelt aber keine Lösung gefunden. Vielen Dank im Voraus.

Antwort

0

Hallo, was ist mit setStylesProperty Funktion können Sie diesen Code teilen? Verwenden Sie editor.dom.setStyle Funktion?

+0

Hey m.kerkeni, eigentlich habe ich die Lösung, in setStylesProperty vorher setze ich die style -Eigenschaft - ** node.style. **. Aber jetzt danach, mit - ** node.dataset.mceStyle = node.getAttribute ('style') ** Das löst mein Problem. Trotzdem Danke. :) –

+0

Ok Nitika gut. In tinyMce Dev versuchen, die vordefinierten Funktionen in winzigen Kern zu verwenden. In Ihrem Beispiel ** Editor. dom. setStyle ** behebe dein Problem, weil diese Funktion beide Attribute ** style ** und ** data-mce-style ** ändert. –

+0

ja, ich habe deine Lösung auch versucht, und es funktioniert gut für mich, Vielen Dank @ m.kerkeni :) –

Verwandte Themen