SelectionStart SelectionEnd Range

时间:2013-09-09 13:17:40

标签: javascript selection onkeydown onkeypress

我正在分析其他人制作的软件,它叫做Editarea。这个软件是用Javascript制作的,它在你输入的同时逐步着色这个单词。这对我来说是这个软件最有用的功能,因为我必须制作一个可以实时着色这些单词的编辑器。问题是我无法理解“如何”这个任务是由editarea的javascript编辑器完成的。

是否可以在javascript中执行文本的实时颜色而无需实际使用onkeypress或onkeydown事件?或者,更具体地说,是否可以通过选择具有选择对象或范围对象的文本部分来执行它,具体取决于用户使用的浏览器?

我正在游荡,因为一个不能使用调试器(脚本都包含在原始版本的字符串中)所以我很难理解我修改的脚本在哪里改变了文本的颜色。所以我我只是问它是否真的只能用选择对象来完成,或者你绝对需要onkeypress或onkeydown事件来执行任务。

谢谢大家的回答。

阿格尼斯

1 个答案:

答案 0 :(得分:1)

我没有时间挖掘他们的代码,但是,我可以给你一个关于在哪里看的线索。

当代码运行时,在“edit_area_full.js”文件的底部有一个以文字字符串形式存在的模糊代码区域。获取此代码并查找JQuery或原始Javascript使用此DOM元素的所有地方。我敢打赌,在这个代码在body'onload'事件期间运行时,动态添加了一个事件处理程序。