zoukankan      html  css  js  c++  java
  • tinymce原装插件源码分析(七)-使能css、script

    在tinymce中使用css个script

    tinymce的编辑器中css和script默认是不起作用的。(编辑器主要面向写文章使用,考虑到xss攻击,默认是不启用的)

    需要修改tinymce.js中几行代码,可以使其起作用。

    1、SaxParser.parse中,关于script标签。

    L11732- L11758注释掉

    这一部分的意思是,在Start element处遇见script等标签,直接跳过,不进行解析(不追加到DOM中)。

    这个函数的调用,一般在editor.setContent中使用(根据传递的HTML string,来对页面的HTML进行设置)。

    2、另一个地方就是Schema(L10352)的修改

    这一部分是解析模式设置,就是遇见比如div、span等,怎么处理(属性过滤、添加。是不是block,比如span的父节点不是block元素的话,就默认加个p标签等等)。

    把L10636(delete schema.script;//不解析script)注释掉。

    在L10448中加入‘’script link style‘’,意思是把这些标签解析成block。(你不希望自己的script外面自动加一层p标签)

    至此,在code功能中,设置好要显示的内容后,script的功能是加载不进来的。但在preview是能看到css和script效果的。

     不同:

    code的html设置:elm.html(html);

    preview的html设置:

    测试部分:

    原生的innerHtml是不起作用的,而jquery.html是起作用的。想要起作用,可以使用jquery的方法。

  • 相关阅读:
    行为模式-模板方法
    行为模式-策略模式
    行为模式-观察者 模式
    行为模式-责任链模式
    python-json
    mongo资料
    用with管理lock锁
    枚举类使用
    db2常见操作命令
    trancate immediate reuse storage
  • 原文地址:https://www.cnblogs.com/xunhanliu/p/10757166.html
Copyright © 2011-2022 走看看