1
我是JavaScript新用户,并且正在尝试编写简单的突出显示工具。每个功能都能正常工作,但是当组合时,发生次数不再正常工作。这里是我的代码,http://jsfiddle.net/mrBXu/,问题是当你第一次选择任何“The”时,事件工作正常,但是如果你重新选择它,它不再是正确的。感谢您的帮助!突出显示选定的文本并同时获得发生
我是JavaScript新用户,并且正在尝试编写简单的突出显示工具。每个功能都能正常工作,但是当组合时,发生次数不再正常工作。这里是我的代码,http://jsfiddle.net/mrBXu/,问题是当你第一次选择任何“The”时,事件工作正常,但是如果你重新选择它,它不再是正确的。感谢您的帮助!突出显示选定的文本并同时获得发生
不幸的是,你所要做的并不是那么容易。之所以在第二次尝试中不起作用,是因为您插入了一个跨度来突出显示。第一次选择文本时,startContainer是位于“p”标签内的textNode。第二次选择时,startContainer是一个textNode,它从插入的跨度末尾开始。你需要做的事情需要更多的代码。您不仅需要检查startContainer,还需要找到与“p”标记的关系,并检查“p”标记内的startContainer之前的所有节点。
这里有一个工作示例:http://jsfiddle.net/mrBXu/4/
感谢您指出,但是,它仍然是太难为我从头开始实施,是有可能,你可以给我一些例子吗?谢谢! – 2012-08-09 23:35:06
我更新了您的代码以正常工作。这不是很漂亮,但它完成了工作。 – 2012-08-10 02:56:02
非常感谢!我真的很感激它! – 2012-08-12 14:27:32