2014-06-07 13 views
5

Używam TinyMCE i używam edytora wbudowanego, jeśli to ma znaczenie. To jest mój kod ...Przycisk Zapisz TinyMCE w menu Plik

<script type="text/javascript"> 
tinymce.init({ 
    selector: "div.prut8Eje", 
    inline: true, 
    plugins: [ 
     "advlist autolink lists link image charmap print preview anchor save", 
     "searchreplace visualblocks code fullscreen", 
     "insertdatetime media table contextmenu paste" 
    ], 
    menu : { // this is the complete default configuration 
     file : {title : 'File' , items : 'save newdocument | print'}, 
     edit : {title : 'Edit' , items : 'undo redo | cut copy paste pastetext | selectall'}, 
     insert : {title : 'Insert', items : 'link media | template hr'}, 
     view : {title : 'View' , items : 'visualaid'}, 
     format : {title : 'Format', items : 'bold italic underline strikethrough superscript subscript | formats | removeformat'}, 
     table : {title : 'Table' , items : 'inserttable tableprops deletetable | cell row column'}, 
     tools : {title : 'Tools' , items : 'spellchecker code'} 
    }, 
    toolbar: "save | insertfile undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image" 
}); 
</script> 

Dobrze, przycisk zapisu działa dobrze na pasku narzędzi, ale nie pojawia się w menu Plik. Próbowałem publikować zdjęcia, ale potrzebuję 10 punktów reputacji.

Edit: Można zobaczyć obrazy w http://gyazo.com/3d08cd176cd7b3cb4c6d6d395884e466 http://gyazo.com/daed4520adb902cb87336d943d6a30f7

Dzięki z góry,

Ben

Odpowiedz

3

Według własnej dokumentacji, wtyczka "zapisz" jest tylko dla pasek narzędzi, a nie menu: http://www.tinymce.com/wiki.php/Controls

Wygląda jak musisz ręcznie utworzyć swój własny element menu; coś takiego może działać:

tinymce.PluginManager.add('menusave', function(editor, url) { 
    editor.addMenuItem('menusave', { 
     text: 'Save', 
     context: 'file', 
     onclick: function() { 
      $('.mce-i-save').closest('button').trigger('click'); 
     } 
    }); 
}); 

Do tego do pracy, choć, trzeba mieć przycisk Zapisz znajdujący się na pasku narzędzi, jak również, ale są tam pewnie lepsze sposoby, aby to zrobić, niż wyzwolenie kliknij na przycisk na pasku narzędzi.

Potem nie zapomnij dodać „menusave” (lub cokolwiek wybierzesz to nazwać) na liście wtyczek i dodać go gdziekolwiek chcesz go mieć w menu:

file : {title : 'File' , items : 'menusave newdocument | print'}, 

Przy okazji, aby wymyślić powyższy kod, zagrałem z tym "TinyMCE Fiddle": http://fiddle.tinymce.com/ngdaab/0

5

To jest stare pytanie, ale znalazłem bardzo prosty sposób dodania przycisku Zapisz do menu plików. Korzystanie zdarzenie konfiguracji w TinyMCE, można dodać element menu:

tinymce.init({ 
    ..... 
    setup: function(editor) { 
      editor.addMenuItem('save', { 
       icon: 'save', 
       text: 'Save', 
       cmd: 'mceSave', 
       context: 'file', 
       disabled: true, 
       onPostRender: function() { 
        var self = this; 
        editor.on('nodeChange', function() { 
         self.disabled(editor.getParam("save_enablewhendirty", true) && !editor.isDirty()); 
        }); 
       } 
      });| 
    } 
}); 

ta wykorzystuje wszystkie regularne zapisać funtions a funkcja onPostRender prostu włącza lub wyłącza przycisk (przy użyciu kodu znalazłem w zapisania pliku plugin.js)

Powiązane problemy