DEDE修改Ueditor代码实现自动给图片插入超链接
为什么要给图片加入超链接呢?因为现在有那lightbox的插件,点击图片会在本页弹出图片查看,效果不错,但是必须要图片有本身的超链接才可以,因此才想要在自动上传的时候让编辑器自动添加这个功能。
因为别的编辑器代码不太好查找,而且现在百度的这个Ueditor用的人也越来越多了,主要是这个代码都有明确的注释,比较容易修改,因此选择这个编辑器。
具体修改方法也很简单,打开Ueditor目录下的ueditor.all.js文件,我的是完全版的,可以在11119行,看到如下的代码,直接替换到11147行成如下代码即可。
} else {
var html = [], str = '', ci;
ci = opt[0];
if (opt.length == 1) {
str = '<a href="' + ci.src + '"><img src="' + ci.src + '" ' + (ci._src ? ' _src="' + ci._src + '" ' : '') +
(ci.width ? 'width="' + ci.width + '" ' : '') +
(ci.height ? ' height="' + ci.height + '" ' : '') +
(ci['floatStyle'] == 'left' || ci['floatStyle'] == 'right' ? ' style="float:' + ci['floatStyle'] + ';"' : '') +
(ci.title && ci.title != "" ? ' title="' + ci.title + '"' : '') +
(ci.border && ci.border != "0" ? ' border="' + ci.border + '"' : '') +
(ci.alt && ci.alt != "" ? ' alt="' + ci.alt + '"' : '') +
(ci.hspace && ci.hspace != "0" ? ' hspace = "' + ci.hspace + '"' : '') +
(ci.vspace && ci.vspace != "0" ? ' vspace = "' + ci.vspace + '"' : '') + '/></a>';
if (ci['floatStyle'] == 'center') {
str = '<p style="text-align: center">' + str + '</p>';
}
html.push(str);} else {
for (var i = 0; ci = opt[i++];) {
str = '<p ' + (ci['floatStyle'] == 'center' ? 'style="text-align: center" ' : '') + '><a href="' + ci.src + '"><img src="' + ci.src + '" ' +
(ci.width ? 'width="' + ci.width + '" ' : '') + (ci._src ? ' _src="' + ci._src + '" ' : '') +
(ci.height ? ' height="' + ci.height + '" ' : '') +
' style="' + (ci['floatStyle'] && ci['floatStyle'] != 'center' ? 'float:' + ci['floatStyle'] + ';' : '') +
(ci.border || '') + '" ' +
(ci.title ? ' title="' + ci.title + '"' : '') + ' /></a></p>';
html.push(str);
}
}
当然,如果你想自动动手的话,也是可以的,那就是在img标签前边加上a href标签即可,当然,别忘了在img标签后边加上a标签的封闭代码。
直接上传覆盖原代码即可。
说明:
以上的修改仅在使用批量上传的时候有效果,当然批量上传你即使上传一张图片也是可以的。在单张上传时不可以,因为没查找真实的单张上传的代码,因此我的选择是取消掉单张上传的按钮。
打开ueditor.config.js文件,删除这个按钮:'simpleupload',的代码就可以了,它在第44行第1个。
至于,如果添加lightbox,下次再说。
如果内容对你有用,请花费几秒钟给个评论!
由于评论审核机制,可能您的评论暂时不可见,不影响查看回复可见的内容!
扫描二维码推送至手机访问。
版权声明:本文由云淡风轻Mr.Liu发布,如需转载请注明出处。