ueditor 使用setContent 会改变原来html里的img的路径

时间: 2024-03-12 13:50:27 浏览: 21
是的,使用 `setContent` 方法设置 HTML 内容时,如果 HTML 内容中包含图片等资源文件,且这些资源文件的路径是相对路径,那么这些相对路径会相对于当前页面的 URL 进行解析,而不是相对于原来 HTML 内容所在的 URL 进行解析,导致图片等资源文件的路径出错。 解决这个问题的方法是,在使用 `setContent` 方法设置 HTML 内容之前,将 HTML 内容中的相对路径转换为绝对路径,可以使用以下代码: ```javascript var absoluteUrl = new URL(relativeUrl, window.location.href).href; ``` 其中,`relativeUrl` 是相对路径,`window.location.href` 是当前页面的 URL,`absoluteUrl` 是转换后的绝对路径。可以使用该方法将 HTML 内容中的所有相对路径转换为绝对路径,然后再使用 `setContent` 方法设置 HTML 内容,这样就可以避免路径出错的问题了。
相关问题

Ueditor中如何使用setContent() 不改变html里的图片路径

在使用 `setContent` 方法设置 HTML 内容时,Ueditor 提供了一个 `filterTxt` 方法,可以过滤掉 HTML 内容中的一些不需要的属性或元素,从而保留图片等资源文件的相对路径。 使用 `filterTxt` 方法的具体步骤如下: 1. 获取需要设置的 HTML 内容。 ```javascript var content = "<p>这是一段包含图片的 HTML 内容</p><img src='img/pic.jpg'>"; ``` 2. 在设置 HTML 内容之前,调用 `filterTxt` 方法对 HTML 内容进行过滤。 ```javascript content = editor.getOpt('filterTxt')(content); ``` 3. 使用 `setContent` 方法设置过滤后的 HTML 内容。 ```javascript editor.setContent(content); ``` 4. 在保存 HTML 内容时,如果需要将相对路径转换为绝对路径,可以使用 `getContent` 方法获取 HTML 内容,然后使用正则表达式替换相对路径。 ```javascript var content = editor.getContent(); content = content.replace(/src=['"]([^'"]+)['"]/g, function(match, p1) { var absoluteUrl = new URL(p1, window.location.href).href; return 'src="' + absoluteUrl + '"'; }); ``` 这样做的效果是过滤掉 HTML 内容中的一些不需要的属性或元素,并保留图片等资源文件的相对路径。在保存 HTML 内容时,可以将相对路径转换为绝对路径,从而避免图片等资源文件路径出错的问题。

ueditor setContent

`UEditor` 提供了一个 `setContent` 方法,用于设置编辑器的初始内容。该方法接受一个参数,可以是一个字符串或一个 DOM 对象,表示要设置的内容。例如: ```javascript var editor = new UE.ui.Editor(); editor.render("editor"); editor.setContent("<p>Hello World!</p>"); ``` 以上代码创建了一个 `UEditor` 实例,并设置了初始内容为一个段落元素。 如果要设置内容为一个 DOM 对象,可以使用 `innerHTML` 属性获取该对象的 HTML 代码,然后传入 `setContent` 方法。例如: ```javascript var div = document.createElement("div"); div.innerHTML = "<p>Hello World!</p>"; editor.setContent(div.innerHTML); ``` 以上代码创建了一个 `div` 元素,将其内容设置为一个段落元素,并将其 HTML 代码传入 `setContent` 方法。 注意,`setContent` 方法必须在编辑器实例渲染完成之后调用,否则会出现异常。可以将 `setContent` 方法放在 `render` 方法之后,或者在 `render` 方法的回调函数中调用。例如: ```javascript var editor = new UE.ui.Editor(); editor.render("editor", function(){ editor.setContent("<p>Hello World!</p>"); }); ``` 以上代码在 `editor` 元素上渲染编辑器实例,并在渲染完成后设置初始内容。

相关推荐

最新推荐

recommend-type

vue项目中使用ueditor的实例讲解

下面小编就为大家分享一篇vue项目中使用ueditor的实例讲解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
recommend-type

React中使用UEditor百度富文本的方法

react项目中导入ueditor,会存在各种不正交的问题,需要注意。 引入 首先在ueditor官网下载最新安装包,然后在项目入口的html中导入(导入方式不一,可以采用import的方式,需要自行度娘。但是无论哪种引入方式,...
recommend-type

百度UEditor编辑器使用教程与使用方法(图文)

今天笔者就给大家推荐一款百度UEditor编辑器。关于这款百度UEditor编辑器官网上也有简单的教程,不过看着比较费劲,今天笔者就跟大家分享一下百度UEditor编辑器使用教程与使用方法,希望对大家有所帮助
recommend-type

详解springboot整合ueditor踩过的坑

主要介绍了详解springboot整合ueditor踩过的坑,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
recommend-type

springboot下ueditor上传功能的实现及遇到的问题

主要介绍了springboot下ueditor上传功能的实现及遇到的问题,本文分步骤通过实例截图给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

MATLAB柱状图在信号处理中的应用:可视化信号特征和频谱分析

![matlab画柱状图](https://img-blog.csdnimg.cn/3f32348f1c9c4481a6f5931993732f97.png) # 1. MATLAB柱状图概述** MATLAB柱状图是一种图形化工具,用于可视化数据中不同类别或组的分布情况。它通过绘制垂直条形来表示每个类别或组中的数据值。柱状图在信号处理中广泛用于可视化信号特征和进行频谱分析。 柱状图的优点在于其简单易懂,能够直观地展示数据分布。在信号处理中,柱状图可以帮助工程师识别信号中的模式、趋势和异常情况,从而为信号分析和处理提供有价值的见解。 # 2. 柱状图在信号处理中的应用 柱状图在信号处理
recommend-type

用Spring boot和vue写一个登录注册界面

好的,这是一个比较常见的技术问题,我可以为您提供一些参考资料和思路。首先,您可以使用Spring Boot作为后端框架来处理用户认证和注册的逻辑,比如使用Spring Security实现用户登录认证。同时,您还需要设计相应的数据模型和数据库表结构来存储用户信息。在前端方面,您可以使用Vue.js作为框架来构建登录注册页面,使用Axios来发起API请求并和后端进行交互。当然,在实现过程中,还需要考虑一些具体细节,比如数据校验、安全性和用户体验等方面。希望这些信息能够帮助到您。
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。