js获取富文本中的第一张图片(正则表达式)
js获取富文本中的第一张图片url正则公式及去除字符串里面的html标签
后台发来一个富文本字符串里面可能包含了0、1、2、3…个图片标签(img),我们的任务是获取这个字符串里面第一张图片的url,如果没有图片则返回空
去除字符串里面的html标签的正则公式
js如何获取ueditor里面的第一张图片
想获取ueditor里面第一张图片作为缩略图,怎么获取,ueditor里面全部是以文本方式储存的
UE.getPlainTxt() 可获取到编辑器中的纯文本内容,有段落格式
UE.getContentTxt() 可获取到编辑器中的纯文本内容,没有段落格式;
ueditor 没有提供直接获取图片的功能,可以UE.getContent() 获取全部内容,使用正则表达式 筛选出图片,我提供一个使用JAVA写的筛选方法,前台js代码类似:
可以打开ueditor.all.min.js 查看,里面有所有支持的方法 注释也都很明白
ueditor发布文章获取第一张图片为缩略图实现方法
正则匹配图片地址获取第一张图片地址
此为函数 在模块或是全局Common文件夹中的function.php中
用法演示
dedecms中的js获取fckeditor中的图片
再补充一个完整的
js获取UEditor文本编辑器中的图片地址
写之前在网上找了很多方法,最简单的思路应该是1.获取UEditor中的内容;2.将获取到的字符串转换成jquery对象;3.选择器找到img元素,获取src值。
打印结果:
写出上面代码之前碰了几次壁,绕了几个弯,下面就是我整个开发过程,记录下。
1.获取UEditor中的内容
这一步很简单,使用编辑器提供的getContent()函数
2.将获取到的字符串转换成jquery对象
var content= UE.getEditor(‘details').getContent();
上面是我编辑器里的内容(content),最简单的方法是用
$(content)来转换成jquery对象,但是$(content).html()的打印结果如下:
可以看出来转换出的Jquery对象代表的是content中第一个html元素p,剩下的html元素获取不到,也就无法进行第三步获取图片地址。
这里可以补充的是,网上提供的一种方法
$(content).get(0).outerHTML的打印结果如下:
get(1)、get(2)…依次可以打印出接下来的html元素代码,我开始考虑循环获取,但是循环次数的获取回到了原地,根本取不到,有兴趣的可以尝试。
既然jquery的思路断了,我就开始考虑原生js的方法,在网上找了个:
打印出来的结果非常好:
前面绕的弯两行代码就解决了,原生js真棒!
但是我还是习惯用jquery,又把它转换成jquery了,方便下面的选择器和循环
var $v = $($div);//从dom对象转换成jquery对象
3.选择器找到img元素,获取src值
i.src可以直接获取图片url地址,成功!
您可能感兴趣的文章
![](/uploads/allimg/20211101/1-2111011135294Q.png)
![](/uploads/allimg/20211101/1-21110111352cO.png)