笔者近期在某个项目上集成了百度的UEditor编辑器,文章内容需要发布带有磁力链接(magnet:)和电驴链接(ed2k:)的超链接,可是在笔者添加后却提示:”您输入的超链接中不包含http等协议名称,默认将为您添加http://前缀 “这段话,同时在发布后,本来为“magnet:?xt=urn:btih:9a560d193dc186a0”或者“ed2k://xxxxxxxx”的资源链接却变成了“http://magnet:?xt=urn:btih:9a560d193dc186a0”和“http://ed2k://xxxxxxxx”。
无奈只能找修改的方法,经过一番查询最终解决了,解决方法如下:
打开UEditor目录下/dialogs/link/link.html
找到第75和106行,将原来的代码:
if(!hrefStartWith(href,["http","/","ftp://",'#'])) { href = "http://" + href; }
修改为:
if(!hrefStartWith(href,["http","/","ftp://",'#',"magnet","ed2k"])) { href = "http://" + href; }
至此,问题解决!