欢迎您,零度科技专业海外服务器租用
公司电话: 24小时电话: 

当前位置:首页>网站建设教程>javascript教程

目录导航

ueditor1.2.1图片远程抓取错误,ueditor网络图片返回路径错误

添加于 2013-05-04  
javascript教程

问题:
在用百度ueditor1.2.1版本的编辑器的,需要用到网络图片这功能(图片远程抓取,ueditor在线图片),但编辑器返回的路径错误,所以图片显示不了。
分析和解决方法:
图片本来的路径为:
http://192.168.1.5:8080/activity/resource/38/54/d6/60/97e67e16-6c4a-4e3d-b514-dfe2decdfaee.png,
但显示的路径为
http://localhost:8080/blablago/libs/ueditor1_2_1_0-utf8-jsp/jsp/upload/1341369309546.png,
很明显编辑器改变了图片路径。
而在editor_all.js文件中的代码
var newSrc = me.options.catcherPath + url;                         
domUtils.setAttributes(ci, {
"src":newSrc,
"data_ue_src":newSrc
});

alert出来显示如下:
me.options.catcherPath = http://localhost:8080/blablago/libs/ueditor1_2_1_0-utf8-jsp/
url = jsp/upload/1341369309546.png
所以说,图片路径变了的原因是在这里。
 
在editor_all.js文件中前一点的代码找到

if (remoteImages.length) {
   catchremoteimage(remoteImages, {
   //成功抓取
   success:function (xhr) {
       try {
         var info = eval_r("(" + xhr.responseText + ")");
         alert("info.srcUrl = "+info.srcUrl);
       } catch (e) {
          return;
        }
...

alert出来后,info.srcUrl的路径显示是正确的在线路径。
如图:

再往下看的话,会发现如图:

原因就是domUtils.setAttributes改变了图片路径属性的值了,所以只要将其注释就能正确显示图片了,如上图所示。

var srcUrls = info.srcUrl.split(separater),
    urls = info.url.split(separater);
for (var i = 0, ci; ci = imgs[i++];) {
    var src = ci.getAttribute("data_ue_src") || ci.src || "";
        for (var j = 0, cj; cj = srcUrls[j++];) {
            var url = urls[j - 1];
            if (src == cj && url != "error") {  //抓取失败时不做替换处理
             //地址修正
            var newSrc = me.options.catcherPath + url;
            alert("me.options.catcherPath = "+me.options.catcherPath);
            alert("url = "+url);
            domUtils.setAttributes(ci, {
              "src":newSrc,
              "data_ue_src":newSrc
             });
         break;
         }
     }
 }


另外:如果不行,可能是没有开启远程图片抓取功能,其开启在editor_config.js文件中

//远程抓取配置区
,catchRemoteImageEnable:true  //是否开启远程图片抓取,默认开启
,catcherUrl:URL +"jsp/getRemoteImage.jsp"   //处理远程图片抓取的地址
,catcherPath:URL   //图片修正地址,同imagePath
//,catchFieldName:"upfile"     //提交到后台远程图片uri合集,若此处修改,需要在后台对应文件修改对应参数
//,separater:'ue_separate_ue'   //提交至后台的远程图片地址字符串分隔符
//,localDomain:[]    //本地顶级域名,当开启远程图片抓取时,除此之外的所有其它域名下的图片都将被抓取到本地

本文出自零度科技转载请注明出处:http://www.ldisp.com/a/javascript/2013/1560.shtml

上一篇:UEditor 修改回车使用br标签
下一篇:javascript 8款常用框架介绍与对比

 
了解零度?

零度科技主营全球服务器租用,如果您有服务器租用需求请联系

海外服务器租用

推荐香港、美国、韩国。提供站群服务器、高防服务器租用

海外特价服务器

关注零度特价服务器频道,了解全球特价服务器。

0

业务咨询

    技术服务

      特价活动
        全站搜索
        热门搜索:
        会员
        0通知
        客服
        0特价
        搜索
        TOP
        香港高防服务器,远程桌面,韩国服务器,nginx,反向代理