我尝试自定义一个编辑器插件,以便将文本插入编辑器中。插入的文字将是{{value-chosen}}'并且选择了价值'将只是从下拉列表中选择的单个单词。
下拉列表由包含单词的数组组成。
当我从下拉列表中选择单词时,例如'狗'它应该插入:
{{狗}}
,而是插入此文字:
{{function(selector,context){// jQuery对象实际上只是init构造函数'增强' //如果调用jQuery需要init(如果不包括则只允许抛出错误)返回新的jQuery.fn.init(selector,context);}}}
这是编码,它是从插件中添加到编辑器中添加更多选项/按钮。它表现接近我想要的,所以我修改它以我需要的方式工作,但我将上面的消息插入到edotor中。
keyii_name = ["8", "9", "10", "11", "12", "14", "18", "24", "30", "36", "48", "60", "72", "96"];
! function(a) {
"function" == typeof define && define.amd ? define(["jquery"], a) : "object" == typeof module && module.exports ? module.exports = function(b, c) {
return void 0 === c && (c = "undefined" != typeof window ? require("jquery") : require("jquery")(b)), a(c), c
} : a(jQuery)
}(function(a) {
"use strict";
a.extend(a.ZeEditor.DEFAULTS, {
// DROPDOWN LIST MADE FROM THE keyii_name VARIABLE
itemKey: keyii_name,
itemKeySelection: !1
}), a.ZeEditor.PLUGINS.itemKey = function(b) {
function c(c) {
// INSERT '{{ chosen value }}'
b.selection.remove(), b.html.insert("{{" + a + "}}");
}
return {
apply: c
}
}, a.ZeEditor.RegisterCommand("itemKey", {
type: "dropdown",
title: "Font Size",
html: function() {
// THIS HASNT BEEN CHANGED BY ME IT MIGHT BE WHERE I AM GOING WRONG
for (var a = '<ul class="fr-dropdown-list">', b = this.opts.itemKey, c = 0; c < b.length; c++) {
var d = b[c];
a += '<li><a class="fr-command" data-cmd="itemKey" data-param1="' + d + '" title="' + d + '">' + d + "</a></li>"
}
return a += "</ul>"
},
callback: function(a, b) {
this.itemKey.apply(b)
},
}), a.ZeEditor.DefineIcon("itemKey", {
NAME: "text-height"
})
});
我只能假设我需要更改才能使其工作。这个js有点高于我,我仍在学习这样复杂的js(因此我这样做的原因)。
非常感谢这方面的帮助。