IE核心(我使用IE9能在dz官网重现此问题)使用纯文本模式的时候 编辑器的快捷绑定会失效 (最明显的表现就是在帖子的编辑器内“Ctrl+回车”快捷键不能提交帖子)
修复IE核心下 使用纯文本模式的时候 论坛编辑器的快捷绑定失效问题
非纯文本模式下 下断点 setEditorEvents()可以按照图示的断点处往下正常执行,
修复IE核心下 使用纯文本模式的时候 论坛编辑器的快捷绑定失效问题
因为此时editdoc是个iframe,所以editdoc.body不是空
修复IE核心下 使用纯文本模式的时候 论坛编辑器的快捷绑定失效问题
但是在纯文本模式下editdoc是个textarea 所以editdoc.body必定不存在,
修复IE核心下 使用纯文本模式的时候 论坛编辑器的快捷绑定失效问题
下断点看会产生如下异常
修复IE核心下 使用纯文本模式的时候 论坛编辑器的快捷绑定失效问题
写了个补丁对付了一下 在异常的时候再次进行一次异常处理就可以了 算是最简单最懒的方案
DZ的人要是觉得不屑呢可以自己再写个判断完善下,要是看得起呢直接拿起去合并好了
Index: editor.js
- ===================================================================
- --- editor.js (版本 833)
- +++ editor.js (版本 834)
- @@ -588,7 +588,14 @@
- editdoc.body.attachEvent('onmouseup', mouseUp);
- editdoc.body.attachEvent('onkeyup', keyUp);
- editdoc.body.attachEvent('onkeydown', keyDown);
- - } catch(e) {}
- + } catch(e) {
- + /*IE核心 源代码模式下 编辑器快捷键绑定的DirtyFix ihipop @ 22:27 2012-10-06*/
- + try {
- + editdoc.attachEvent('onmouseup', mouseUp);
- + editdoc.attachEvent('onkeyup', keyUp);
- + editdoc.attachEvent('onkeydown', keyDown);
- + } catch(r) {}
- + }
- }
- }
复制代码
修复IE核心下 使用纯文本模式的时候 论坛编辑器的快捷绑定失效问题
|