- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
关于如何扩展 Aloha 编辑器,是否有任何真正的帮助?
我想做的是扩展他们的 float 菜单——我想添加一个带有自定义字段的下拉列表。
例如,如果用户选择一个自定义字段,则会在 html 中添加一个标签,例如:<special_field>
出现在可编辑的内容中。
更新:到目前为止我的插件初始化部分的代码......
EXAMPLE.Product.init = function() {
var that = this;
// floating menu "Insert template field"-button
var insertButton = new GENTICS.Aloha.ui.Button({
label: 'template field',
'size': 'small',
'onclick': function() {
that.insertfield();
},
'tooltip': this.i18n('button.insertfield'),
'toggle': false
});
GENTICS.Aloha.FloatingMenu.addButton(
'GENTICS.Aloha.continuoustext',
insertButton,
GENTICS.Aloha.i18n(GENTICS.Aloha, 'floatingmenu.tab.insert'),
2
);
// product scope & product attribute field
GENTICS.Aloha.FloatingMenu.createScope(this.getUID('product'), 'GENTICS.Aloha.global');
this.productField = new GENTICS.Aloha.ui.AttributeField();
//style for the drop down that appears when user searches for a fieldname
this.productField.setTemplate('<span><b>{name}</b>' +
'<br class="clear" /><i>{type}</i></span>');
// set the type of field that are allowed to be visible of field search
this.productField.setObjectTypeFilter(['specialfield','systemfield']);
this.productField.setDisplayField('name');
GENTICS.Aloha.FloatingMenu.addButton(
this.getUID('product'),
this.productField,
this.i18n('floatingmenu.tab.specialfield'),
1
);
// handle event as soon as a product block is clicked
GENTICS.Aloha.EventRegistry.subscribe(GENTICS.Aloha, 'selectionChanged', function(event, rangeObject) {
var foundMarkup = that.findProduct(rangeObject);
jQuery('.product-selected').removeClass('product-selected');
if (foundMarkup.length != 0) {
GENTICS.Aloha.FloatingMenu.setScope(that.getUID('product'));
that.productField.setTargetObject(foundMarkup, 'data-field-name');
foundMarkup.addClass('product-selected');
}
// re-layout the Floating Menu
GENTICS.Aloha.FloatingMenu.doLayout();
});
GENTICS.Aloha.EventRegistry.subscribe(
GENTICS.Aloha,
"editableDeactivated",
function(jEvent, aEvent) {
jQuery('.product-selected').removeClass('product-selected');
}
);
这只会向编辑器添加一个字段,然后我必须单击该字段本身以将其更改为正确的字段类型。
Update2:我最新的代码是:(下面有截图)
/**
* insert a template field at the cursor position
*/
function SetupButton(button) {
var scope = 'GENTICS.Aloha.continuoustext';
var definefield = '<label class="ui-specialfield" data-field-name="{0}" data-field-type="{1}" contentEditable="false">[{2}]</label>';
// floating menu "Insert template field"-button
var insertButton = new GENTICS.Aloha.ui.Button({
label: button.Name.substring(0, 11), //truncate fields to enable easy viewing for now
size: 'small',
onclick: function() {
console.debug(" field: " + button);
var range = GENTICS.Aloha.Selection.getRangeObject();
definefield = definefield.replace("{0}", button.Name);
definefield = definefield.replace("{1}", button.Type);
definefield = definefield.replace("{2}", button.Name);
var newTemplate = jQuery(definefield);
GENTICS.Utils.Dom.insertIntoDOM(newTemplate, range, jQuery(GENTICS.Aloha.activeEditable.obj));
range.startContainer = range.endContainer = newTemplate.contents().get(0);
range.select();
},
tooltip: button.Name,
toggle: false
});
switch (button.Type) {
case "sfield":
GENTICS.Aloha.FloatingMenu.addButton(scope, insertButton, button.Type, 1);
break;
case "pfield":
GENTICS.Aloha.FloatingMenu.addButton(scope, insertButton, button.Type, 1);
break;
case "afield":
GENTICS.Aloha.FloatingMenu.addButton(scope, insertButton, button.Type, 1);
break;
case "cfield":
GENTICS.Aloha.FloatingMenu.addButton(scope, insertButton, button.Type, 1);
break;
default:
break;
}
}
我会尽快查看您的代码回复并更新代码...如您所见,按钮溢出...您可能会注意到的另一件事是,如果有很多选项卡,则无法清楚地看到引脚...
最佳答案
他,
如果您想添加一个包含自定义内容的下拉列表,您可能想尝试使用 MultisplitButton(这是一种用于应用 h1、h2、h3 等的输入元素)。 Product 插件 ( http://aloha-editor.org/guides/writing_plugins.html ) 介绍了 MultisplitButton 以及将内容插入可编辑内容,该插件还包含一个演示。
所有指南目前位于 http://aloha-editor.org/guides/ .
关于javascript - 扩展 Aloha Editor 的格式插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5222610/
Aloha Editor附带一个图像插件,使用户能够内联编辑图像。但是,我还没有找到在编辑器中删除图像的方法。我在 Mac 上,我试过: 选择图像时按 Backspace 当光标位于图像前面时按 Ba
根据 Aloha Editor 文档,您可以监听“aloha-smart-content-changed”事件以寻求帮助,例如,将数据保存到您正在使用的任何持久性机制。这是我正在尝试做的一个例子:
如何在 aloha-multi split-expanded 框中添加新的 aloha-button。 (我想要添加无限数量的样式的能力。当然,不是通过管理员,而是硬编码) 最佳答案 为 Aloha
我正在尝试向 Aloha 内联编辑器 UI 工具栏添加一个按钮,以便在我的 Rails 应用程序中使用。用于普通 html 页面的代码工作正常。然而,在我的 Rails 应用程序中它不起作用,即使我复
我正在试验 Aloha 内联 HTML5 编辑器 (www.aloha-editor.com)。 我正在创建一个 CMS 系统,允许管理员上传文件以供下载。 这些将进入上传目录 (public_htm
除了 vis css,如何禁用工具栏中图像插件的裁剪按钮?配置不起作用。 Aloha.settings = { plugins: { image: {
我想在我的网站上使用 Aloha 编辑器,我从 [ http://aloha-editor.org/].Now 下载了它。我很困惑,因为下载的包中包含很多文件。 我选择了 aloha.js 和 alo
我已经按照 aloha-editor.org 中描述的如何“安装”aloha 编辑器进行了操作。 Aloha 编辑器已加载(如您在照片中所见)但未正确加载 你可以在这里看到照片: 这是我使用的一些 j
我想禁用 Aloha Editor边栏。我在不同的地方看到了以下代码,这对我不起作用: Aloha.settings = { sidebar: { disabled: true } }; 如果我在
我正在尝试模拟 Pure Aloha 协议(protocol)。经过一些研究,我了解了该协议(protocol)的工作原理。简而言之,假设我们有 5 个节点并且帧大小是固定的。所有节点共享一个 cha
关于如何扩展 Aloha 编辑器,是否有任何真正的帮助? 我想做的是扩展他们的 float 菜单——我想添加一个带有自定义字段的下拉列表。 例如,如果用户选择一个自定义字段,则会在 html 中添加一
我想使用 Aloha-Editor对于我的一个项目。默认的项目语言是德语,但我找不到任何方法来更改编辑器的语言。 (搜索了网络及其网站的指南。) 我唯一发现的是在为编辑器开发插件时如何使用 i18n,
在一个页面上,我想要有 2 个可以使用 aloha-editor 进行编辑的 div。对于一个字段,格式化工具栏应该可用,而对于另一字段,则只有插入工具栏可用。如何实现这一目标? 最佳答案 可以在每个
我需要将 Aloha 编辑器固定到特定位置,而不是在整个页面上跳来跳去。 有配置选项吗?有一个用于配置 Aloha 的“附加”选项,但我不知道如何应用,即使它能解决我的问题... 如果没有配置选项,也
有没有办法像侧边栏一样禁用 Aloha 的 ExtJS 工具栏? Aloha.settings = modules: ['aloha', 'aloha/jquery'] editabl
我正在努力自定义 Aloha 编辑器。我想删除可编辑内容周围的黄色边框: 在 Github 上,有人提出了同样的问题,给出的答案是, the highlight plugin shows the us
我在 Web 应用程序中使用 Aloha。它工作得很好,可以做我需要做的一切。唯一的问题是,一旦我尝试添加以下设置来自定义工具栏, Aloha.settings = { ... too
我正在使用 Aloha 编辑客户网站上的内容,并希望在保存时删除所有额外的 DOM 元素和属性。 段落标签来自: 到: 我想删除所有这些添加的元素。我错过了 Aloha API 中的销毁调用吗?
我在我的项目中使用 aloha editor 2。一切正常,但我不知道如何添加/显示工具栏,以便我可以在页面中加粗或添加表格。我看到那里的文档并了解到这些事情可以通过编程完成,但在 Aloha 编辑器
我一直在使用 Aloha Editor 创建 example of a simple editor ,但我还没有成功让它在 Opera 中工作。菜单不会出现,文本区域不可编辑。 在所有其他浏览器中似乎
我是一名优秀的程序员,十分优秀!