首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在tinymce中无正则表达式的情况下从img标签获取地址

如何在tinymce中无正则表达式的情况下从img标签获取地址
EN

Stack Overflow用户
提问于 2019-09-10 14:07:11
回答 3查看 82关注 0票数 0

我需要将< img >标记包装在标记中,为此,它需要获取图片的地址。如何在不使用regexp的情况下做到这一点?

我还需要知道图片的宽度,'onload‘函数会破坏事件'BeforeSetContent’

代码语言:javascript
复制
        ed.on('BeforeSetContent', function (e) {
                if (e.content.startsWith("<img")) {
    var s = e.content.replace(/\<img src=\"(.+)\" alt.+\>/i,'$1');
 console.log('SRC: '+s);
                                          
//            var img = new Image();        
//            img.src = s;                  
//            img.onload = function() {     
// console.log('img-width: '+img.width);    
//            if (img.width > 450){         
    e.content = '<a class="ajax-modal modal_image hover_image"  href="' + s + '">' + e.content + '</a>';
//                }
//            }

        }
    });

EN

回答 3

Stack Overflow用户

发布于 2019-09-10 14:37:26

如果你想在点击img时打开新窗口,你可以这样做:

代码语言:javascript
复制
document.addEventListener('click', function(event) {
  if (event.target.nodeName === 'IMG' && event.target.src && /^http/.test(event.target.src)) {
    event.preventDefault()
    window.open(event.target.src)
  }
})
票数 0
EN

Stack Overflow用户

发布于 2019-09-10 14:41:04

要回答第一个问题,如果你的镜像有一个id,那么:

代码语言:javascript
复制
var imgsrc = document.getElementById("yourImageId").src;

如果它没有id,则使用父对象,例如:

代码语言:javascript
复制
var imgsrc = document.querySelectorAll('#imgParentDiv img')[0].src
票数 0
EN

Stack Overflow用户

发布于 2019-09-11 00:03:42

我不能用jQuery得到地址

代码语言:javascript
复制
	ed.on('BeforeSetContent', function (e) {
	   if (e.content.startsWith("<img ")) {
  var objC = $(e.content).filter(':first');
  var src = objC.attr('src');
    e.content = '<a class="ajax-modal modal_image hover_image"  href="' + src + '">' + e.content + '</a>';
    }
});

如何使用jQuery和我创建的对象'objC‘获取图片的宽度?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57864886

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档