2

我刚刚开始在某个项目上使用 Kendo-UI 框架,我发现文档在这件事上真的很差。我正在尝试在我的下面添加一些额外的 html(确切地说是按钮),Kendo.Editor所以每次我创建一个新的时,按钮都会在那里。Kendo 是否像 ExtJs 那样可扩展,其中为所有组件提供了此类功能(更容易或更难完成但仍然可能)?

4

1 回答 1

6

我对文档和质量有感觉,尽管他们正在努力工作并且一直在改进。

我最近有一些扩展编辑器的经验,它非常容易和可能。

声明编辑器时,您有一个工具属性。当您输入集成工具的名称时,它只会显示该工具,或者您也可以传入一个对象来定义一个新工具。下面是我创建自定义“插入视频”工具的示例。名称和工具提示属性是不言自明的。exec 是一个属性,您可以在其中传递一个在单击按钮时执行的函数。我的示例中的 exec 打开了一个自定义剑道窗口,该窗口实现了添加视频的逻辑。它有一个界面,您可以在其中选择 Vimeo 或 Youtube,粘贴到常规链接中,然后将嵌入的视频粘贴到您的编辑器中。基本上,当您在我的窗口中单击“确定”时,会触发一个事件,处理嵌入视频的标记并将其粘贴到编辑器中。在编辑器中粘贴标记的方法是:$("

当然,如果你想要更健壮的东西,你可以在你的 exec 函数中添加更复杂的代码。就像在这种情况下会为视频窗口创建所有需要的标记,并在关闭后销毁它或类似的东西。

        $("#editor").kendoEditor({
            tools: [ {
                name: "insertVideo",
                tooltip: "Insert video",
                exec: function(){
                   var window = $("#windasd").data("kendoWindow");
            window.center().open();
                   }

            },'formatBlock', 'bold', 'italic', 'underline', 'createLink', 'unlink', 'insertImage', 'insertUnorderedList', 'insertOrderedList', "justifyLeft",
            "justifyCenter",
            "justifyRight",
            "justifyFull", ],

        });

此外,如果您想要自定义图标,则必须添加一些 css。您的按钮将根据您传入的名称自动获得一个 CSS 类。它只是在名称中添加一个“k-”前缀,因此我的名称将是“k-insertVideo”。只需向该类添加背景图像即可。

祝你好运,希望我的帖子对你有所帮助,并且不是以复杂的方式写的!

于 2013-02-07T10:57:13.730 回答