Welcome to the website navigation,本站只接受合法正规的企业网站,欢迎站长们提交你的网站获得展示和流量有任何问题请联系站长,欢迎大家加入本站。

                
提交网站
  • 网站:76083
  • 待审:5
  • APP:577
  • 文章:304416
  • 会员:56004
文字内链包年1000元 文字内链包年1000元 文字内链包年1000元 AI办公网站 AI绘画工具 AIchat

名站网址导航为大驾家提供DedeCMS站点程序站点教程相关的知识,比如织梦程序安装教程,织梦程序系统故障等教程。

网站开发中有用到开源的富文本编辑器UEditor,在使用的过程中遇到了样式被过滤无法显示问题,经过一番折腾终解决,此外,还有一些关于获取网站的前台界面元素的一些总结。O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

1. UEditor样式被过滤无法显示问题O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

         上周有用到百度开源的富文本编辑器----UEditor.不得不说这个富文本编辑器做的真的很赞,个人觉得比CKeditor要好用很多,效果也很不错。O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

但是在使用的过程中,有遇到在向文本编辑器插入hTML文本时,添加的样式老是被过滤掉,找了很多的资料,并结合最新的版本,整理了下如何解决样式过滤的相关具体操作方法。O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

咱们在富文本编辑页点击hTML小图标,切换到hTML模式,然后在该模式下加入如下hTML:O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

<style type="text/css">
.bg{ background:lightbule;}
</style>
<div class="bg">
hello EveryBody Welcome To UEditor World!
</div>

然后咱们再点击hTML图标,转换到预览页,可以看到咱们的div的背景色并没有任何的变化,而且咱们在div之前写的样式,也没有被渲染,O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

反而是以文本的形式显示了出来。F12查看整个页面,发现咱们之前写的样式和标签都被渲染成如下的html:O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

<div style="display: none;" cdata_tag="style" type="text/css">
<p>
hello EveryBody Welcome To UEditor World!
</p>

由以上相关具体代码如下可以看出,咱们的style标签被转换成了div,并且设置样式为不可见,咱们的div标签被转换成了p标签。O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

这说明编辑器本身自己做了一个转换,类似于一个过滤吧,可能是为了出于安全性考虑,防止用户在前段输入非法的相关具体代码如下、脚本等,事实上我觉得这有点多此一举,O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

既然都让富文本编辑了,不能写html脚本,还叫什么富文本。O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

然后咱们再点击hTML图标,看看hTML试图,网站内容如下:O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

<style type="text/css">.bg{ background:lightbule;}</style>
<p>
hello EveryBody Welcome To UEditor World!
</p>

结合以上分析得出,该编辑器内部过滤机制是将style标记转换为div,而将div等标签以p替代。如何解决呢?O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

之前有在网上查过相关的资料,都说是在配置网站文件里有一个黑白名单,然后就在配置网站文件里找了下,在最新版本的脚本网站文件里怎么找也没找到那个所谓的黑白名单,O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

当然了,没有黑白名单也照样可以解决问题的。O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

首先在ueditor.all.js网站文件内搜索allowDivTransToP,找到如下的相关具体代码如下,将true设置为falseO2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

me.setOpt('allowDivTransToP',false);
//默认的过滤处理
//进入编辑器的网站内容处理
然后再接着下边的addInputRule相关具体操作方法中将switch相关具体代码如下段中的case style,script都给注释或者删掉。
me.addInputRule(function (root) {
var allowDivTransToP = this.options.allowDivTransToP;
var val;
//进行默认的处理
root.traversal(function (node) {
if (node.type == 'element') {
if (!dtd.$cdata[node.tagName] && me.options.autoClearEmptyNode && dtd.$inline[node.tagName] && !dtd.$empty[node.tagName] && (!node.attrs || utils.isEmptyObject(node.attrs))) {
if (!node.firstChild()) node.parentNode.removeChild(node);
else if (node.tagName == 'span' && (!node.attrs || utils.isEmptyObject(node.attrs))) {
node.parentNode.removeChild(node, true)
}
return;
}
//删除switch下的case style 和script
switch (node.tagName) {
case 'a':
if (val = node.getAttr('href')) {
node.setAttr('_href', val)
}
break;

完成以上操作之后,保存即可。再次插入html时,样式就可以显示了。O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

解释一下以上操作的意义。O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

第一步将allowDivTransToP设置为false是因为默认的设置是将div自动转换为p,这样写好的样式就找不到相应的divO2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

了,所以才渲染不上的。O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

第二步将addInputRule系统数据库函数中的switch 相关具体代码如下段中的case style ,script选择给删除或者注释,是为了避免出现编辑器将style或script自动的转换成别的标签。O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

好了,大驾家可以试一试,看看效果。O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

 O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

2.JQuery.attr()与JQuery.css()的区别O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

     之前一直没太区分attr()与css,今天好好看了下,css和attr作用的范围不同,css主要是用来设置样式的,也就是style内的东西,而attr主要是用来设置属性的,比如元素的title,name、style等这些都可以称之为属性,举例说明O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

  <input  id="btn"  type="button" value="确定” />O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

咱们可以用$("#btn").css("background","green");为该按钮设置一个背景色,O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

而如果咱们这样写$("#btn").attr("background","green");不但按钮的背景色不会发生变化,相反该按钮在页面渲染之后又多了一个background的属性,请注意,这里是属性,而不是style里边的background,页面的渲染如下:O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

<input  id="btn"  type="button" value="确定”  background="green" />O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

织梦程序php7的版本下,百度编辑器Ueditor多图上传后编辑器出现重复O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

O2JAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

关于DedeCMS站点程序站点教程相关的知识,就说到这里了希望能帮助朋友们。

标签:

分享到:

  网友投稿

注册时间:

网站:0 个   APP:0 个  文章:0 篇

  • 76083

    网站

  • 577

    APP

  • 304416

    文章

  • 56004

    会员

赶快注册账号,推广您的网站吧!
文章分类
热门网站
最新入驻APP小程序

宝贝市场2023-02-08

宝贝市场——买手和卖家商品展示

夺宝助手2023-02-08

夺宝助手小程序,查看每日快夺宝平

查诚信2023-02-08

查诚信是一款免费的商业查询工具

车价天天报2023-02-08

快速连接汽车销售,获知汽车最新报

考勤助理小程序2023-02-08

上班签到考勤,实时定位,后台轻松

汽车报价大全查询2023-02-08

汽车报价大全查询提供最新汽车市