這里可以補(bǔ)充的是,網(wǎng)上提供的一種方法
$(content).get(0).outerHTML的打印結(jié)果如下:
get(1)、get(2)…依次可以打印出接下來的html元素代碼,我開始考慮循環(huán)獲取,但是循環(huán)次數(shù)的獲取回到了原地,根本取不到,有興趣的可以嘗試。
既然jquery的思路斷了,我就開始考慮原生js的方法,在網(wǎng)上找了個(gè):
var $p = document.createElement("p");//創(chuàng)建一個(gè)p元素對象
$p.innerHTML = content;//往p里填充html
打印出來的結(jié)果非常好:
前面繞的彎兩行代碼就解決了,原生js真棒!
但是我還是習(xí)慣用jquery,又把它轉(zhuǎn)換成jquery了,方便下面的選擇器和循環(huán)
var $v = $($p);//從dom對象轉(zhuǎn)換成jquery對象
3.選擇器找到img元素,獲取src值
$.each($v.find("img"),function (v,i) {
console.log("src======" i.src);
});
i.src可以直接獲取圖片url地址,成功!
下面為大家補(bǔ)充
js如何獲取ueditor里面的第一張圖片
想獲取ueditor里面第一張圖片作為縮略圖,怎么獲取,ueditor里面全部是以文本方式儲(chǔ)存的
UE.getPlainTxt() 可獲取到編輯器中的純文本內(nèi)容,有段落格式
UE.getContentTxt() 可獲取到編輯器中的純文本內(nèi)容,沒有段落格式;
ueditor 沒有提供直接獲取圖片的功能,可以UE.getContent() 獲取全部內(nèi)容,使用正則表達(dá)式 篩選出圖片,我提供一個(gè)使用JAVA寫的篩選方法,前臺(tái)js代碼類似:
Pattern p_img = Pattern.compile("(] src\\\\s*=\\\\s*'\\\\"['\\\\"][^>]*>)");
Matcher m_img = p_img.matcher(content);
while (m_img.find()) {
String img = m_img.group(1); //m_img.group(1) 為獲得整個(gè)img標(biāo)簽 m_img.group(2) 為獲得src的值
}
可以打開ueditor.all.min.js 查看,里面有所有支持的方法 注釋也都很明白
ueditor發(fā)布文章獲取第一張圖片為縮略圖實(shí)現(xiàn)方法
正則匹配圖片地址獲取第一張圖片地址
此為函數(shù) 在模塊或是全局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');//獲取富文本編輯器內(nèi)容
$info=getPic($content);//使用函數(shù) 返回匹配地址 如果不為空則聲稱縮略圖
if(!$info==null){
$thumb=$info.'thumb240x160.png';
$image = new \\\\Think\\\\Image();//實(shí)例化圖像處理,縮略圖功能
$image->open($info);// 生成一個(gè)居中裁剪為240*160的縮略圖
$unlink=$image->thumb(240, 160,\\\\Think\\\\Image::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(/<img(.*?) src=["|'](.*?)["|'](.*?)>/);
if(fimg[2]){
document.getElementById('picname').value=fimg[2];
if(document.getElementById('ImgPr'))document.getElementById('ImgPr').src=fimg[2];//預(yù)覽
if(document.getElementById('picview'))document.getElementById('picview').src=fimg[2];//預(yù)覽
}
}
}
相關(guān)推薦:編程視頻課程
更多關(guān)于云服務(wù)器,域名注冊,虛擬主機(jī)的問題,請?jiān)L問西部數(shù)碼官網(wǎng):m.ps-sw.cn