a11ychecker 运行 如何处理 CKEDITOR.dom.element 更改后的内容?
How can a11ychecker run process on content after CKEDITOR.dom.element change?
我正在尝试用 class span.numberstring
|span.datestring
标记数字字符串和日期字符串,这样 CKeditor A11ychecker 插件就会找到它们并呈现一个 Quickfix 表单来填充 <abbr title>
带有屏幕可读文本的属性。当 'beforeCommandExec' 等于 'a11ychecker' 时,我使用以下脚本 运行 进行正则表达式搜索。替换编辑器内容后,'CKEDITOR.dom.element'显示为'null',错误响应为:
plugin.js?t=K87C:32 Uncaught TypeError: Cannot read property 'getPosition' of null
txtGroupEditor.on('beforeCommandExec',function(event){
var commandName = event.data.name;
if(commandName == 'a11ychecker'){
var dataRegex=/([0-9]{4,4})(?!<\/span>)/g,
string=this.getData(),
m;
do {
m = dataRegex.exec(string);
if (m) {
string=string.replace(m[0],'<span class="numberstring">' + m[0] + '</span>');
}
} while (m);
this.setData(string);
}
});
这是时间问题吗?我曾尝试在正则表达式操作完成后触发 a11ychecker 进程,但这也不起作用,而且它似乎仍然解除了与实例的绑定。预先感谢您的帮助。
没有正则表达式运算的结果
正则表达式运算的结果
结论:当点击 a11ychecker 按钮时,按顺序强制执行两个操作 运行(标记然后 a11ychecker),似乎有其挑战。
解决方案:将标记操作拆分到自己的按钮中似乎更有效、更可靠。现在,在启用 a11ychecker 按钮之前,需要标记操作 运行。当编辑器内容在 'key' 下被激活时,a11ychecker 按钮将被禁用以假定内容已被更改并且应该通过标记操作再次 运行。
我正在尝试用 class span.numberstring
|span.datestring
标记数字字符串和日期字符串,这样 CKeditor A11ychecker 插件就会找到它们并呈现一个 Quickfix 表单来填充 <abbr title>
带有屏幕可读文本的属性。当 'beforeCommandExec' 等于 'a11ychecker' 时,我使用以下脚本 运行 进行正则表达式搜索。替换编辑器内容后,'CKEDITOR.dom.element'显示为'null',错误响应为:
plugin.js?t=K87C:32 Uncaught TypeError: Cannot read property 'getPosition' of null
txtGroupEditor.on('beforeCommandExec',function(event){
var commandName = event.data.name;
if(commandName == 'a11ychecker'){
var dataRegex=/([0-9]{4,4})(?!<\/span>)/g,
string=this.getData(),
m;
do {
m = dataRegex.exec(string);
if (m) {
string=string.replace(m[0],'<span class="numberstring">' + m[0] + '</span>');
}
} while (m);
this.setData(string);
}
});
这是时间问题吗?我曾尝试在正则表达式操作完成后触发 a11ychecker 进程,但这也不起作用,而且它似乎仍然解除了与实例的绑定。预先感谢您的帮助。
没有正则表达式运算的结果
正则表达式运算的结果
结论:当点击 a11ychecker 按钮时,按顺序强制执行两个操作 运行(标记然后 a11ychecker),似乎有其挑战。
解决方案:将标记操作拆分到自己的按钮中似乎更有效、更可靠。现在,在启用 a11ychecker 按钮之前,需要标记操作 运行。当编辑器内容在 'key' 下被激活时,a11ychecker 按钮将被禁用以假定内容已被更改并且应该通过标记操作再次 运行。