首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

手把手教你写一个简易的微前端框架

最后得到入口页面所有的 script style 的内容 将所有 style 添加到 document.head 下,script 代码直接执行 将剩下的 body 部分的 HTML 内容赋值给子应用要挂载的...二、解析 HTML 并提取 style script 标签内容 这需要使用一个 API DOMParser,它可以直接解析一个 HTML 字符串,并且不需要挂到 document 对象上。...假设在 vue 应用上有这样一个样式: body { color: red; } 当它作为一个子应用被加载时,这个样式需要被修改为: /* body 被替换为子应用挂载 DOM 的 id 选择符...(body|html)\b/g // 将 body html 标签替换为子应用挂载容器的 id cssText.replace(re, `#${app.container.id}`) V4 版本 V3...我们可以在子应用卸载时将当前子应用所有的 style 标签进行移除,再次挂载时将这些标签重新添加到 document.head 下。这样就实现了不同子应用之间的样式隔离。

2.6K40

Java 实现 markdown转Image

markdown 转 image 前段时间实现了长图文生成的基本功能,然后想了下能否有个进阶版,直接将markdown生成渲染后的图片呢?...思路 有不少的库可以将 markdown 转为 html,那么这个需求就可以转为 html转Image了 1. markdown 转 html 可以参看之前的博文《Java 实现 markdown转...Html》 2. html 转 图片 主要的核心问题就在这里了,如何实现html转图片?...css样式渲染支持 实现 本篇先会先实现一个基本的功能,即读去markdown文档, 并转为一张图片 1. markdown 转 html 封装 利用之前封装的 MarkDown2HtmlWrapper...return new Html2ImageWrapper(options); } } } 上面的实现,有个需要注意的地方 如何将html格式的字符串,转为 Document 对象

2.3K50
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    JavaScript 笔记

    *toLowerCase()     把字符串转换为小写。         *toUpperCase()     把字符串转换为大写。    ...>除文档节点之外的每个节点都有父节点。         >大部分元素节点都有子节点。         >当节点分享同一个父节点时,它们就是同辈(同级节点)。         ...父、子和同级节点         节点树中的节点彼此之间都有等级关系。         父、子和同级节点用于描述这种关系。...Object 对象 (HTML元素 转成的对象(js对象))     注意: 如果使用js操作HTML文档, 就需要选将HTML文档结构转成Js对象         a....操作节点:             appendChild()     向节点的子节点列表的结尾添加新的子节点。

    1.8K60

    把飞书云文档变成HTML邮件:问题挑战与解决历程

    一、背景云文档转HTML邮件基于公司内部的飞书办公套件,早在去年6月,我们就建设了将飞书云文档转译成HTML邮件的能力,方便同学们在编写邮件文档和发送邮件时,都能有较好的体验和较高的效率。...由于我们要把文档树转译成最终的一个完整的HTML字符串,在模板字符串中写内联样式(style="width: 100px;...")会非常痛苦,代码可读性会很差,开发调试的效率也会很低。...... // ...... // 将样式对象转成行间样式字符串。...由于原来的方法中完全没有处理过文本块的缩进,我们根据飞书缩进的规律,为普通的文本块(表格、栅格等以外的文本块)在渲染子节点时为子节点的容器添加25px的padding-left。...在表格的渲染中,我们没有像之前的代码一样使用renderChildBlocks把所有子文档块都渲染出来添加进HTML字符串中,而是使用了新的renderSpecifyBlock方法,给定block_id

    22510

    jquery常用方法

    1 2 3 外观效果 $("#ID").addClass(class);//添加样式 $("#ID").removeClass(class);//移除样式 $("#ID").css(name,value...);//设置一个样式属性的值 1 2 3 查找和遍历筛选 $("#ID").map(callback);//将一组元素转换成其他数组 $("#ID").find(expr);//搜索所有与指定表达式匹配的元素...);//获得当前匹配元素集合中每个元素的父元素 $("#ID").filter();//将匹配元素集合缩减为匹配选择器或匹配函数返回值的新元素 $("#ID").not();//从匹配元素集合中删除元素...$("#ID").add();//将元素添加到匹配元素的集合中 $("#ID").slice();//将匹配元素集合缩减为指定范围的子集 $("#ID").siblings(); //获得匹配元素集合中所有元素的同辈元素...查找元素的下标 jQuery.merge(array1,array2);//合并两个数组 jQuery.unique(dom);//去除重复DOM元素 jQuery.makeArray(obj);//将类数组对象转换为数组对象

    80820

    JavaScript 高级程序设计(第 4 版)- DOM

    ():用于在 childNodes 列表末尾添加节点 添加新节点会更新相关的关系指针,包括父节点和之前的最后一个子节点 appendChild()方法返回新添加的节点 如果把文档中已经存在的节点传给...DOM将文档片段定义为“轻量级”文档,能够包含和操作节点,却没有完整文档那样额外的消耗。不能直接把文档片段添加到文档。相反,文档片段的作用是充当其他要被添加到文档的节点的仓库。...,则该节点会从文档树中移除,不会再被浏览器渲染 可以通过 appendChild()或 insertBefore()方法将文档片段的内容添加到文档 在把文档片段作为参数传给这些方法时,文档片段的所有子节点会被添加到文档中相应的位置...# 动态样式 元素用于包含 CSS 外部文件, 而元素用于添加嵌入样式。动态样式也是页面初始加载时并不存在,而是在之后才添加到页面中的。...DOM 结构中向不同方向遍历的方法 parentNode(),遍历到当前节点的父节点 firstChild(),遍历到当前节点的第一个子节点 lastChild(),遍历到当前节点的最后一个子节点 nextSibling

    1.2K30

    如何将HTML字符转换为DOM节点并动态添加到文档中

    将HTML字符转换为DOM节点并动态添加到文档中 将字符串动态转换为DOM节点,在开发中经常遇到,尤其在模板引擎中更是不可或缺的技术。...字符串转换为DOM节点本身并不难,本篇文章主要涉及两个主题: 1 字符串转换为HTML DOM节点的基本方法及性能测试 2 动态生成的DOM节点添加到文档中的方法及性能测试 本文的示例:...DOMParser 实例的parseFromString方法可以用来直接将字符串转换为document 文档对象。...container.appendChild(createDocument('hello')); 1.1.2 DocumentFragment DocumentFragment 对象表示一个没有父级文件的最小文档对象...下面我们看看将生成的DOM元素动态添加到文档中的方法。 1.2.0 批量添加节点 被动态创建出来的节点大多数情况都是要添加到文档中,显示出来的。下面我们来介绍并对比几种常用的方案。

    7.6K20

    JavaScript 网页脚本语言 由浅入深

    一种描述性语言,也是一种基于对象和事件驱动的,并具有安全性能的脚本语言 javaScript是一种基于对象和事件驱动的,并具有安全性能的脚本语言 解释执行 javaScript特点 向HTML页面中添加交互行为...") 将字符串转换为整数数字 parseFloat("字符串") 将字符串转换为浮点数字 ISNAN() 用于检查其参数是否是非数字 自定义函数 定义函数  (无参函数) (有参函数) function...() 返回带有指定标签名的对象的集合 write()   向文档写文本、HTML表达式或JavaScipt代码 Array:用于在单独的变量名存储一系列的值 String: 用于支持对字符串的处理 Math...="#ff0000" className属性 语法 HTML元素.className="样式名称" 获取元素的样式 语法HTML元素.style.样式属性; 示例 alert(document.getElementByid...[,[argN]]]]]) 调用一个对象的一个方法,以另一个对象替换当前对象 借用构造函数的一个大的优势 可以在子类型构造函数中向父类型构造函数传递参数 组合继承:有时候也叫做伪经典继承 将原型链和借用构造函数的技术组合到一块

    1.8K100

    一个合格的初级前端工程师需要掌握的模块笔记

    元素分类转换display block:将元素转换为块级元素 inline:将元素装换为行级元素 inline-block:将元素转换为内联块元素 none: 将元素隐藏 描边border border...,HTML 里,永远是html>元素 :last-child 向元素添加样式,且该元素是它的父元素的最后一个子元素 :nth-child(n) 向元素添加样式,且该元素是它的父元素的第 n 个子元素...:nth-last-child(n) 向元素添加样式,且该元素是它的父元素的倒数第 n 个子 元素 :only-child 向元素添加样式,且该元素是它的父元素的唯一子元素 :first-of-type...向元素添加样式,且该元素是同级同类型元素中第一个元 素 :last-of-type 向元素添加样式,且该元素是同级同类型元素中最后一个 元素 :nth-of-type(n) 向元素添加样式,...,且该元素是同级同类型元素中唯一的元素 :empty 向没有子元素(包括文本内容)的元素添加样式 伪元素选择器 :enabled 向当前处于可用状态的元素添加样式,通常用于定义表单的样式或者超链接的样式

    3.7K10

    XML基础

    如果需要在HTML文档中显示动态数据,则每次数据改变时将花费大量的时间来编辑HTML。...DOM是W3C标准,W3C将DOM定义为“一个使程序和脚本有能力动态地访问和更新文档的内容、结构以及样式的平台和语言中立的接口”。DOM分为核心DOM、HTML DOM和XML DOM。...(2)DOM级别2:在DOM级别1的基础上添加了样式表对象模型,并定义了操作文档样式信息的功能。同时,DOM级别2定义了一个事件模型,并提供对XML命名空间的支持。...1.父级、子级和同级节点 节点树中的节点彼此之间存在等级关系,可以使用父级、子级和同级节点描述这种关系。父节点拥有子节点,位于相同层级上的子节点称为同级节点。 (1)在节点树中,顶端的节点为根节点。...1.3.2 加载XML文档 浏览器都内建了用于读取和操作XML的XML解析器。解析器将XML读人内存,并转换为可以被JavaScript访问的XML DOM对象。

    13410

    第二章 你第首个Electron应用 | Electron in Action(中译)

    图2.1 我们在本章中构建的应用程序效果图   当用户希望将网站URL保存并添加到输入字段下面的列表中时,应用程序向网站发送一个请求来获取标记。...我们将以下代码添加到app/main.js中,以告诉渲染器进程在我们之前创建的窗口中加载这个HTML文档。 列表2.6 将HTML文档加载到主窗口: ....让我们在页面上添加一个按钮。 列表2.7 添加一个按钮到HTML文档: ./app/index. html 添加样式 当我们在Electron应用程序中引用样式表时,很少会发生意外。稍后,我们将讨论如何使用Sass而不是Electron。...我将包含链接到样式表的HTML标记—因为,在我作为web开发人员的20年里,我仍然不记得如何第一次尝试就做到这一点。 列表2.11 在HTML文档中引用样式表: .

    4.7K30

    JavaScript(进阶)

    文档对象模型,通过DOM可以来任意来修改网页中各个内容 文档 文档指的是网页,一个网页就是一个文档 对象 对象指将网页中的每一个节点都转换为对象,转换完对象以后,就可以以一种纯面向对象的形式来操作网页了....appendChild(子节点) 向父节点中添加指定的子节点 父节点.insertBefore(新节点,旧节点) 将一个新的节点插入到旧节点的前边 父节点.replaceChild(新节点,旧节点...JSON分类: 对象 {} 数组 [] JSON中允许的值: 字符串 数值 布尔值 null 对象 数组 将JSON字符串转换为JS中的对象 在JS中,为我们提供了一个工具类,就叫JSON 这个对象可以帮助我们将一个...JSON转换为JS对象,也可以将一个JS对象转换为JSON JSON.parse() —— json --> js对象 可以将以JSON字符串转换为js对象 它需要一个JSON字符串作为参数,会将该字符串转换为...JS对象并返回 JSON.stringify() —— JS对象 ---> JSON 可以将一个JS对象转换为JSON字符串 需要一个js对象作为参数,会返回一个JSON字符串 JSON这个对象在IE7

    1.5K20

    前端架构师之10_JavaScript_DOM

    各节点之间的关系,又可分为以下几个方面: 根节点:html> 标签是整个文档的根节点,有且仅由一个。 子节点:指的是某一个节点的下级节点。 父节点:指的是某一个节点的上级节点。...对于getElementsByClassName()方法、getElementsByTagName()方法和children属性返回的集合中可以将id和name自动转换为一个属性。...方法 document.write() 向文档写入指定的内容 方法 document.writeln() 向文档写入指定的内容后并换行 属性属于Element对象,方法属于document对象。...编写add对象,控制添加区域是否显示、添加到列表内的操作或取消添加操作。 4 练习作业 商品购物车 编写HTML代码,设计购物车的结构与显示样式。...编写add对象,控制添加区域是否显示、添加到列表内的操作或取消添加操作。 4 练习作业 商品购物车 编写HTML代码,设计购物车的结构与显示样式。

    10610

    2019年底前的web前端面试题初级-web标准应付HR大多面试问题

    元素转换: display: block 将元素转换为块级元素 display: inline 将元素转换为行级元素...display: inline-block 将元素转换为内联元素 display: none 将元素隐藏 描边border border: 2px solid #000; 线条样式: dashed...解决高度塌陷 父元素在文档流中会默认被子元素撑开 如果此时给子元素添加浮动效果 子元素就会脱离文档流 从而造成父元素的高度塌陷 此时页面便会混乱 如果给父元素设置高宽便会使父元素锁死 不能随子元素变化随意撑开...rem为相对单位,相对根节点html的字体大小来计算。 %百分比,相对长度单位,相对于父元素的百分比值。...,pop()把数组的最后一个元素删除掉 unshift()向数组前添加若干元素 shift()则把数组的第一个元素删除掉 slice()截取数组的部分元素,然后返回一个新的数组 sort()可以对当前数组排序

    2.4K50

    HTML5 与CSS3 相关笔记

    (1)B:first-child 作为父元素的第一个子元素B,作用和(3)相似; (2)B:last-child作为父元素的最后一个子元素B; (3)A B:nth-child(n) 在父级中查第n...如果是右浮动,后面的文本流将环绕在它左边: 47.clear清除浮动:当子元素全部浮动了,父级将包不住子元素会造成边框塌陷,所以要清除浮动元素对其他元素的影响。...(3)父级添加overflow属性:设置外层盒子的overflow:hidden。但此方法不能用于有下拉列表框的场景。 (4)父级添加伪类after,推荐。...层模型有三种形式: (1)绝对定位(position: absolute) 将元素从文档流中拖出来,然后用left、right、top、bottom属性相对最靠近它的一个带有定位属性的父包含块进行绝对定位...2.段落间距、换行 3.用JS动态给HTML添加空格: 例为照顾CSS样式或照顾特殊效果的实现。

    5.4K30

    每日问题

    然后检查是否安装了eslint-plugin-prettier,他是负责将 Prettier 添加为 ESLint 规则。...答: 可以 8.坑: page的.json文件引用组件时,需要注意顺序,否则引用相同组件时样式会相互覆盖。...2019.11.29 9.自定义组件如何使用app.wxss中定义的样式 答:需要在自定义组件中配置: 官方文档 10.input绑定bindinput后,在微信开发者工具中无效,真机有效 答:...不只用于转换为字符串,还有可以将10进制的数,转换为n进制数的本领(n默认为10): num.toString(n) 同样的,将n进制的数转换成10进制的数,也有一个方法: parseInt(...现在cocos中也有类似父子关系的两个node,由于子node太小,绑定在其身上的事件不容易触发,所以我将事件移动到父node上去,在cocosCreator中给父node添加一个Button属性,然后单独给父

    1.7K20

    适用于既有大型MPA项目的“微前端”方案

    : 模板标签的双向转义 服务端在返回子页面信息的json时,由于 template是 html格式,其中可能存在双引号、换行符等特殊字符,需要先将 template内的换行符进行替换,将双引号进行转义...且与现有 nunjucks模板无缝衔接,只需要做一些很小的改动,就可以将原有的页面模板,经过冗余资源的拆分后,输出为子页面的 html-entry。...3.3.3 DOMParser 本着不重复造轮子(拿来主义)的原则,对 html-entry的解析开始也使用了 qiankun 内部使用的 import-html-entry模块。...前方踩坑警告 但DOMParser也不是完美的,在解析自闭合的 div标签时(如 ),会导致结构错乱,原因可能是 DOMParser在解析div时默认其是存在结束标签的。...所以 PageLoader在处理新的路由请求时,需要通过 loadPageOfUrl拼接特殊参数后将请求发出,node 端收到页面请求包含该参数时即返回子页面模板实例化后的 html-entry。

    1.8K20

    前端常见技术点 - CSS DOM 布局(43问)

    浏览器渲染过程:HTML->HTML 解析器->DOM 树;样式->样式解析器->样式规则;DOM 树和样式规则进行结合形成渲染树。...等,当按百分比设定它们时,依据的也是父容器的宽度,而不是高度。...”; 31、弹性布局 弹性父容器:display:flex; 弹性元素:父容器的直接子元素,并且没有脱离文档流(非 absolute 属性)。...33、DOMContentLoaded 和 load 的区别 DOM文档加载的步骤为: 1、解析HTML结构;2、加载外部脚本和样式表文件;3、解析并执行脚本代码;4、DOM 树构建完成。...42、如何高效的插入 HTML 到 DOM 树的指定位置 1、使用 createDocumentFragment() 创建一个内存中的文档片段,将所有需要追加到页面的 HTML 都 appendChild

    1.5K30

    串讲HTML DOM

    这些由 getElementById() 得到的具体对象 就是图中最右一列对象,它们 其实就是 DOM 将具体的每个 HTML标签/元素 封装之后的 一个个HTMLElement 子对象。   ...从 w3cschool 里了解到:Style 对象代表一个单独的样式声明。可从应用样式的 文档 或 元素 访问 Style 对象。...返回节点及其后代的文本 (IE-only) 5 No No No xml 返回节点及其后代的 XML (IE-only) 5 No No No 方法: 方法 描述 IE F O W3C appendChild() 向节点的子节点列表末尾添加新的子节点...5 No No No 方法: 方法 描述 IE F O W3C appendChild() 向节点的子节点列表的结尾添加新的子节点。 5 1 9 Yes cloneNode() 复制节点。...6 transformNode() 使用 XSLT 把一个节点转换为一个字符串。 6 transformNodeToObject() 使用 XSLT 把一个节点转换为一个文档。

    2.9K20

    JS快速入门(二)

    内容(文本和标签),类型为字符串 innerText 和innerHTML类似,但是只返回文本 children 返回指定元素的子元素节点集合 parentNode 返回指定节点的父节点 firstElementChild...(node) 将一个节点插入到指定父节点的子节点列表的末尾 insertAdjacentHTML(position, text) 将指定文本解析为 HTML 字符串,插入到指定位置 createElement...html 内容 innerText 返回元素中的文本内容,通过赋值,可设置元素中的文本内容 document.write() 将 html 字符串写入到文档中 节点写入示例 innerHTML 字符串,会被解析成对应的 html 标签,document.write()根据运行时机,会写入文档不同的位置 ---- 事件基础 事件定义 用户与浏览器交互的方法,规定了浏览器在什么时刻执行什么事情...)都已完成加载时,将触发load事件 beforeunload window、document 和它们的资源即将卸载时触发。

    6.6K30

    扫码

    添加站长 进交流群

    领取专属 10元无门槛券

    手把手带您无忧上云

    扫码加入开发者社群

    相关资讯

    热门标签

    活动推荐

      运营活动

      活动名称
      广告关闭
      领券