在插件中,我插入类型为"按钮"的输入元素。我给出了元素数据属性。出于测试目的,它被称为"数据测试"。接下来,我按照answer中的建议添加了一个监听器。当我单击按钮时,调用函数()。在函数()内部,我需要检索"数据测试"进一步行动的属性。
但是getAttribute(' data-test')返回null。 所以我猜变量" linkElement"不具备客户属性。
任何提示如何正确引用数据属性?
...
var buttonElement = '<input type="button" value="click me" data-test="test attribute"></input>';
var linkElement = CKEDITOR.dom.element.createFromHtml(buttonElement, editor.document);
editor.insertElement(linkElement);
// attach listener to capture clicks
editor.editable().attachListener( linkElement, 'click', function() {
var attribute = linkElement.getAttribute('data-test');
...
console.log('attribute = ',attribute);
}
....
答案 0 :(得分:0)
我自己回答这个问题,因为问题已经解决了。或者更好地说它消失了。我既不能说出它的来源,也不能说它为什么会消失。它有点奇怪,但它可能是一长串无休止的JavaScripts中的编码问题。无论如何,几天前自定义属性无法检索,现在就是。上面的代码非常完美。我在Mac上使用FireFox,Chrome和Safari对其进行了测试。所有最新版本。