js如何获取UEditor富文本编辑器中的图片地址

js如何获取UEditor富文本编辑器中的图片地址

【相关学习推荐:javascript视频教程】

写之前在网上找了很多方法,最简单的思路应该是1.获取UEditor中的内容;2.将获取到的字符串转换成jquery对象;3.选择器找到img元素,获取src值。

var content= UE.getEditor('details').getContent();//获取编辑器内容var $p = document.createElement("p");//创建一个p元素对象$p.innerHTML = content;//往p里填充htmlvar $v = $($p);//从dom对象转换成jquery对象$.each($v.find("img"),function (v,i) {//选择器找到img元素,循环获取src值console.log("src======"+i.src);});

登录后复制

打印结果:

js如何获取UEditor富文本编辑器中的图片地址

写出上面代码之前碰了几次壁,绕了几个弯,下面就是我整个开发过程,记录下。

1.获取UEditor中的内容

这一步很简单,使用编辑器提供的getContent()函数

2.将获取到的字符串转换成jquery对象

夏季到了,持续高温就连大人都受不了,更别说孩子了。所以该不该给孩子穿袜子又成了宝妈心头的大事,一方面觉得应该给孩子穿,毕竟这个几个理由是拒绝不了的。

js如何获取UEditor富文本编辑器中的图片地址

还有一部分宝妈意见不同,认为还是不穿袜子比较好:

1.小孩子经常出汗,新陈代谢比较快,袜子如果不透气的话,有可能会因为生脚汗导致孩子哭闹不休。

2.脚底的穴位多,不穿袜子可以充分按摩到脚底。有利于身体其他机能的运转。缓解便秘,消化不良等症状。

好像两方家长说的都有道理,那么到底应该穿袜子吗?

登录后复制

var content= UE.getEditor(‘details’).getContent();

上面是我编辑器里的内容(content),最简单的方法是用

$(content)来转换成jquery对象,但是$(content).html()的打印结果如下:

js如何获取UEditor富文本编辑器中的图片地址

可以看出来转换出的Jquery对象代表的是content中第一个html元素p,剩下的html元素获取不到,也就无法进行第三步获取图片地址。
这里可以补充的是,网上提供的一种方法

$(content).get(0).outerHTML的打印结果如下:

js如何获取UEditor富文本编辑器中的图片地址

get(1)、get(2)…依次可以打印出接下来的html元素代码,我开始考虑循环获取,但是循环次数的获取回到了原地,根本取不到,有兴趣的可以尝试。

既然jquery的思路断了,我就开始考虑原生js的方法,在网上找了个:

var $p = document.createElement("p");//创建一个p元素对象$p.innerHTML = content;//往p里填充html

登录后复制

打印出来的结果非常好:

js如何获取UEditor富文本编辑器中的图片地址

前面绕的弯两行代码就解决了,原生js真棒!
但是我还是习惯用jquery,又把它转换成jquery了,方便下面的选择器和循环

var $v = $($p);//从dom对象转换成jquery对象

3.选择器找到img元素,获取src值

$.each($v.find("img"),function (v,i) {console.log("src======"+i.src);});

登录后复制

i.src可以直接获取图片url地址,成功!

下面为大家补充

js如何获取ueditor里面的第一张图片

想获取ueditor里面第一张图片作为缩略图,怎么获取,ueditor里面全部是以文本方式储存的

UE.getPlainTxt() 可获取到编辑器中的纯文本内容,有段落格式
UE.getContentTxt() 可获取到编辑器中的纯文本内容,没有段落格式;

ueditor 没有提供直接获取图片的功能,可以UE.getContent() 获取全部内容,使用正则表达式 筛选出图片,我提供一个使用JAVA写的筛选方法,前台js代码类似:

Pattern p_img = Pattern.compile("(]+srcs*=s*'"['"][^>]*>)");Matcher m_img = p_img.matcher(content);while (m_img.find()) {String img = m_img.group(1); //m_img.group(1) 为获得整个img标签 m_img.group(2) 为获得src的值}

登录后复制

可以打开ueditor.all.min.js 查看,里面有所有支持的方法 注释也都很明白

ueditor发布文章获取第一张图片为缩略图实现方法

正则匹配图片地址获取第一张图片地址
此为函数 在模块或是全局Common文件夹中的function.php中

/** * [getPic description] * 获取文本中首张图片地址 * @param [type] $content [description] * @return [type]     [description] */ function getPic($content){    if(preg_match_all("/(src)=(["|']?)([^ "'>]+.(gif|jpg|jpeg|bmp|png))\2/i", $content, $matches)) {      $str=$matches[3][0];    if (preg_match('//Uploads/images/', $str)) {      return $str1=substr($str,7);    }  }}

登录后复制

用法演示

$content=I('post.body');//获取富文本编辑器内容    $info=getPic($content);//使用函数 返回匹配地址 如果不为空则声称缩略图    if(!$info==null){      $thumb=$info.'thumb240x160.png';      $image = new ThinkImage();//实例化图像处理,缩略图功能      $image->open($info);// 生成一个居中裁剪为240*160的缩略图      $unlink=$image->thumb(240, 160,ThinkImage::IMAGE_THUMB_CENTER)->save($thumb);    }else{      $thumb='';    }

登录后复制

dedecms中的js获取fckeditor中的图片

function get_firstimg(){ //var c=document.getElementById('body').value; var c=FCKeditorAPI.GetInstance('body').GetXHTML(true); if(c){  var fimg=c.match(/js如何获取UEditor富文本编辑器中的图片地址/);  if(fimg[2]){  document.getElementById('picname').value=fimg[2];  if(document.getElementById('ImgPr'))document.getElementById('ImgPr').src=fimg[2];//预览  if(document.getElementById('picview'))document.getElementById('picview').src=fimg[2];//预览  } }}

登录后复制

相关推荐:编程视频课程

以上就是js如何获取UEditor富文本编辑器中的图片地址的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2726150.html

(0)
上一篇 2025年3月7日 23:29:25
下一篇 2025年3月6日 12:30:03

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • js实现滑动进度条

    【相关学习推荐:javascript视频教程】 本文实例为大家分享了js实现滑动进度条效果的具体代码,供大家参考,具体内容如下 进度条: nbsp;html>  js滑动进度条效果  *{margin:0;padding:0;user…

    2025年3月7日
    200
  • js中如何进行字符串替换

    js中进行字符串替换的方法:1、使用正则表达法,语法为【str.replace(“需要替换的字符串”,”新字符串”) 】;2、使用常规的替换方法,语法为【str.replace(/需要替换的字…

    2025年3月7日
    200
  • js split方法如何使用

    js split方法的使用:split方法用于把一个字符串分割成字符串数组,语法为【stringObject.split(separator,howmany)】,其中separator参数是必需填,howmany参数是可选。 相关学习推荐:…

    2025年3月7日
    200
  • 爬虫分析之 JS逆向某验滑动加密(1)

    相关学习推荐:javascript视频教程 今天给大家来分析并还原某验的 JS 加密,做过爬虫的应该都知道这个验证码,如果你还没遇到以后你会碰到的相信我 话不多说,时间宝贵,进入正题! 抓包 进入官网,点击选择今天的主题滑动验证,其他验证类…

    2025年3月7日 编程技术
    200
  • 爬虫之 JS逆向某验滑动加密(2)

    相关学习推荐:javascript视频教程 上篇文章给大家分析还原了某验滑动的混淆代码,然后后台很多人在问后面的加密以及整个流程是啥,所以今天索性就把整个加密都弄出来吧 话不多说,时间宝贵,开干! 回到之前 w 的加密处 可以看到该函数接收…

    2025年3月7日 编程技术
    200
  • js面试过程中遇到的异步问题

    js中的宏任务与微任务 (推荐教程:js教程) 在面试过程中,基本面试官都会问你一些promise的问题,promise是es6的新内容,主要是用来优化异步的问题。笔试中经常会让你写一些promise和setTimeout的执行结果,这你就…

    2025年3月7日
    200
  • 消除if else, 让你的代码看起来更优雅

    javascript栏目介绍如何消除if else, 让你的代码看起来更优雅,一起来看看吧。 前言 应该有不少同学有遇到过充斥着if else的代码,面对这样的一团乱麻,简单粗暴地继续增量修改常常只会让复杂度越来越高,可读性越来越差。那么是…

    2025年3月7日
    200
  • js数组如何删除指定元素

    js数组删除指定元素的方法:首先给js数组对象定义一个函数,用于查找指定的元素在数组中的位置,即索引;然后通过得到的指定元素的索引,使用对应函数来删除指定元素。 首先可以给JS的数组对象定义一个函数,用于查找指定的元素在数组中的位置,即索引…

    2025年3月7日
    200
  • js json字符串如何转json对象

    js json字符串转json对象的方法:1、使用“$.parseJSON( jsonstr );”将json字符串转换成json对象;2、使用“eval(‘(‘ + jsonstr + ‘)&#8217…

    2025年3月7日
    200
  • js怎么将字符串转为数组?

    方法:1、使用split()方法,可以将给定字符串str拆分为字符串数组,语法“str.split(separator)”,separator指定分割的地方;2、使用Array.from()方法,字符串的每个字母都转换为新数组实例的元素。 …

    2025年3月7日 编程技术
    200

发表回复

登录后才能评论