CKEditor 插件获取编辑器内容中的第一张图像

发布于 2024-12-04 15:23:45 字数 287 浏览 1 评论 0原文

我有获取当前选定图像的代码,但如果尚未选择图像,我想获取内容中的第一张图像。我使用下面的代码,该代码是根据返回 href 的原始代码改编的。

 var range = selection.getRanges(true)[0];
 range.shrink(CKEDITOR.SHRINK_TEXT);
 var root = range.getCommonAncestor();
 return root.getAscendant('img', true);

如何获得内容中出现的第一张图片?

I have the code which gets the currently selected image, but I would like to get the first image in contents if one has not already been selected. Im using the code below which has been adapted from original which returned an href.

 var range = selection.getRanges(true)[0];
 range.shrink(CKEDITOR.SHRINK_TEXT);
 var root = range.getCommonAncestor();
 return root.getAscendant('img', true);

How could I get the first image which appears in the contents?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

黒涩兲箜 2024-12-11 15:23:45

据我了解,您需要 DOM 节点而不是 CKEditor 节点,对吗?如果是这样,getAscendant('img', true) 返回CKEDITOR.dom.node,这样您就可以从 $ 对象获取本机 DOM 节点。

var img = root.getAscendant('img', true);
if (img)
  return img.$.src;

或者然后使用 img.getAttribute( 'src' )

As I can understand you need DOM node instead the CKEditor node, right? If so getAscendant('img', true) returns CKEDITOR.dom.node so you can get native DOM node from $ object.

var img = root.getAscendant('img', true);
if (img)
  return img.$.src;

Or then use the img.getAttribute( 'src' )

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文