Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
TinyMCE链接和取消链接按钮在自定义主题中不起作用_Tinymce - Fatal编程技术网

TinyMCE链接和取消链接按钮在自定义主题中不起作用

TinyMCE链接和取消链接按钮在自定义主题中不起作用,tinymce,Tinymce,我有一个带有几个按钮的TinyMCE自定义主题(粗体、斜体、删除线、左对齐、中对齐和右对齐、bullist、numlist、link和unlink) 问题在于numlist、bullist、link和unlink按钮。这些不起作用,其他的表现正常 我的tinyMCE.init如下所示: tinyMCE.init({ mode: "textareas", editor_selector: "tinymce",

我有一个带有几个按钮的TinyMCE自定义主题(粗体、斜体、删除线、左对齐、中对齐和右对齐、bullist、numlist、link和unlink)

问题在于numlist、bullist、link和unlink按钮。这些不起作用,其他的表现正常

我的tinyMCE.init如下所示:

tinyMCE.init({

                mode: "textareas",
                editor_selector: "tinymce",
                language: false, // Prevents language packs from loading

                theme: function(editor, target) {
                    var dom = tinymce.DOM, editorContainer;

                    // Generate UI
                    editorContainer = dom.insertAfter(dom.create('div', {style: 'border: 1px solid gray'},
                        '<div>' +
                            '<button class="tinybutton tinybold" data-mce-command="bold"></button>' +
                            '<button class="tinybutton tinyitalic" data-mce-command="italic"></button>' +
                            '<button class="tinybutton tinystrike" data-mce-command="strikethrough"></button>' +
                            '<button class="tinybutton tinybullist" data-mce-command="bullist"></button>' +
                            '<button class="tinybutton tinynumlist" data-mce-command="numlist"></button>' +
                            '<button class="tinybutton tinyleft" data-mce-command="justifyleft"></button>' +
                            '<button class="tinybutton tinycenter" data-mce-command="justifycenter"></button>' +
                            '<button class="tinybutton tinyright" data-mce-command="justifyright"></button>' +
                            '<button class="tinybutton tinylink" data-mce-command="link"></button>' +
                            '<button class="tinybutton tinyunlink" data-mce-command="unlink"></button>' +
                        '</div>' 
                    ), target);

                    // Set editor container size to target element size
                    dom.setStyle(editorContainer, 'width', target.offsetWidth);

                    // Bind events for each button
                    tinymce.each(dom.select('button', editorContainer), function(button) {
                        dom.bind(button, 'click', function(e) {
                            e.preventDefault();

                            // Execute editor command based on data parameters
                            editor.execCommand(
                                dom.getAttrib(e.target, 'data-mce-command'),
                                false,
                                dom.getAttrib(e.target, 'data-mce-value')
                            );
                        });
                    });

                    // Register state change listeners
                    editor.onInit.add(function() {
                        tinymce.each(dom.select('button', editorContainer), function(button) {
                            editor.formatter.formatChanged(dom.getAttrib(button, 'data-mce-command'), function(state) {
                                button.style.color = state ? "red" : "";
                            });
                        });
                    });

                    // Return editor and iframe containers
                    return {
                        editorContainer: editorContainer,
                        iframeContainer: editorContainer.lastChild,

                        // Calculate iframe height: target height - toolbar height
                        iframeHeight: target.offsetHeight - editorContainer.firstChild.offsetHeight
                    };
                },

                encoding: "xml",
                setup: function (ed) {

                    ed.onContextMenu.add(function (ed, e) {
                        tinymce.activeEditor.save();
                    });
                    ed.onKeyUp.add(function (ed) {
                        tinymce.activeEditor.save();
                    });
                    ed.onClick.add(function (ed) {
                        tinymce.activeEditor.save();
                    });
                    ed.onGetContent.add(function (ed, o) {
                        o.content = o.content.replace(/'/g, "&apos;");
                    });
                    //ed.onInit.add(function (ed, evt) {
                    //    tinymce.dom.Event.add(ed.getDoc(), 'blur', function (e) {
                    //        // Do something when the editor window is blured.
                    //        tinymce.activeEditor.save();
                    //    });
                    //});
                },
                width: "100%"                    
            });
使用编辑器css定义工具栏图标。创建新蒙皮并使用默认按钮


你能提供一个活生生的例子吗?我将尝试在JSFIDLE上复制它。好的,这里是,嗯,我不确定这个提琴是否有用。你的编辑器在哪里定义工具栏图标?好吧,你上次的评论帮了大忙。我制作了一个新的皮肤并使用了默认按钮。谢谢你的帮助。
editor.execCommand(
       dom.getAttrib(e.target, 'data-mce-command'),
       false,
       dom.getAttrib(e.target, 'data-mce-value')
       );