使用UEditor 的超链接回显出现很多问题,这里一一记录,有幸帮到你,真好。。。
以下的所有操作,都在 link.html 中处理的,只处理这一个即可完成。。。
1.不想要href,而使用onclick方法(我们的需求)
超链接处理是将 obj 中的属性传入<a></a>标签,然后后面就可以点击等操作;
在此处将href以及_href删除,必须都删除,否则仍然会有,然后添加onclick属性;
如果只添加onclick属性,下次选中连接是无法回显的,报错;
所以添加一个新属性使得下次点击能回回显,我的是hrefEntryId;
仍会报错,因为前面在判断link的时候,有对href属性的判断,需要将原版判断改为如下
回显等一切正常;
但是超链接第一行,即选中文字后无法显示你选中的文字,而是其默认的提示语,这里我也给出我的解决方式;
link为空的时候,即超链接跳转的地址为空时,也就是初次选中文字操作时,需要获取你获取你选中的值,即图中代码
// 获得选取然后就能获取选中值
range.select();
linkTextContent = editor.selection.getText();
link 不为空的时候,二次选中,我这还是通过二次属性传值,然后获取;
不能用link为空的时候的方法,因为当你的link相关的文字内容有四个字,你选中其中三个字,回显时应该将四个字回显,而不是三个字,但如果用select()方法就会回显三个字,所以我这用获取属性的方法。