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

在 HTML 中包含资源的新思路

本周我在思考如何用一些新的与 fetch 相关的标记模式来实现这一点,例如 rel="preload" 或 HTML import,但我总是得出的相同结论,即这些都不能使你方便地访问所取得的文件的内容。...与服务器端嵌入不同,此模式允许我们包含外部文件,同时允许自然缓存文件以供日后重用。(使用服务器端包含的内容,在客户端缓存是可能的,但难以做到)。...无论 JavaScript 是否运行,它都会显示内容,因为这就是 iframe 的设计目标。JavaScript 可以将 iframe 的内容移动到父文档中,即便失败了,你仍会看到包含的内容。...IE 会显示 iframe 中的备选内容,但我认为可以通过调整 onload 处理中的 JS 来获得对 IE 的支持,因为它目前用的是 IE 不喜欢的语法。稍微调整一下,我认为 IE 支持是可能的。...例如对页面上所有图标使用可能会过重,但是对于需要进行动画和样式化的特定图标来说,它可能会很好用。不过现在我只能做更多的测试。

3.2K30

​如何自动化Salesforce应用程序

内嵌框架 IFrame(也称为嵌入式框架)是嵌入到另一个HTML页面中的HTML文档。...().frame(iframe);//现在我们可以单击按钮 很好,但是我发现很少有自动化工程师知道如何使用这些方法来获得最大的可靠性。...那么,TestProject如何处理我们之前使用诸如Salesforce之类的应用程序解决的上述一些问题? TestProject如何处理IFrame 在Selenium中,有一个上下文的概念。...他们在Selenium和 opium,因此足够聪明地知道无需用户输入即可使用和增强的Selenium API方法。...TestProject如何处理动态元素 TestProject还简化了针对生成每次运行都会更改的动态元素的应用程序(例如Salesforce中的应用程序)的测试用例记录。

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

    微前端在小米 CRM 系统的实践

    同时,业务也在不断地发展,导致应用不断膨胀,进一步映射到软件架构上。 现有Web应用(SPA)不能很好的拓展和部署,随着时间的推移,各个项目变得越来越臃肿,web应用变得越来越难以维护。...微件化 微件化(Widget)是一段可以直接嵌入应用上运行的代码,它由开发人员预先编译好,在加载时不需要再做任何修改或编译。...HTML 内联框架元素 iframe> 表示嵌套的正在浏览的上下文,能有效地将另一个 HTML 页面嵌入到当前页面中。...在很多业务场景下,难免会遇到一些难以解决的问题,那么可以引入 iframe 来解决。...在配置菜单时,老系统路由会被带上标识,统一交给其中一个应用以 iframe 的方式处理。 如图: ? 改造后微前端架构图: ?

    1K10

    【微前端】微前端——功能团队中缺失的一块拼图

    在任何合法的前端开发团队中,提高可扩展性和敏捷性很少会成为头等大事。在处理大型、复杂的产品时,如何确保快速、频繁地交付同时包含后端和前端的功能?像后端那样将前端单体分解成许多更小的部分似乎是答案。...尽管这对开发人员来说很好处理,但这并不是用户对系统的期望;大多数人不喜欢使用大量的小型应用程序来完成他们的工作。因此,必须将为此过程分解的内容重新组合到用户界面中。...再一次,一个团队可以在一个简单的架构中交付整个功能。如果执行得当,这不会影响用户体验。 为了很好地执行它,微前端带来了许多后端微服务已知的类似问题,必须解决。...当用户界面被拆分成独立的模块时,前端开发人员可以享有同样的自由——至少在一定程度上。 微前端的优势#3:弹性 任何系统的实际成本都不能很好地体现在代码库的初始开发成本上,而是体现在维护上。...当 iframe 内容溢出时,必须将有关嵌入内容的实际大小的信息传播到父应用程序,并且必须由父应用程序调整 iframe 高度。

    94610

    Figma: 如何在 Web 上构建一个插件系统

    我们希望在可控范围内,用户对 Figma 有更好的插件体验。 此外,我们希望确保插件对用户而言是安全的,因此不能简单地使用 eval(PLUGIN_CODE)——不安全的典型定义!...我们依赖于浏览器技术的支持,同时也受到它们的限制。 这篇博客将引导你实现一个完美的插件解决方案。最终,我们的工作归结为一个问题:如何安全地、稳定地、高性能地运行插件?...在这里,你不会希望 Yelp 仅通过嵌入就能读取 Google 网站中的内容(可能有私人的用户信息),同样地,也不希望 Google 读取 Yelp 网站中的内容。...了解了的工作原理后,我们可以在每次插件运行时创建一个新的,将代码嵌入中来实现插件,插件可以在内执行任何所需的操作。...虽然下面这样是可控的: await figma.loadScene() ... do stuff ... await figma.updateScene() 即便是有经验的工程师,也可能很快变得难以处理

    1.9K30

    Web 嵌入 | Electron 安全

    权限策略的意义如下: 改变手机和第三方视频自动播放的默认行为 限制网站使用相机、麦克风、扬声器等敏感设备 允许 iframe 使用全屏 API 如果项目在视口中不可见,则停止对其进行脚本处理,以提高性能...小结 iframe 作为一种常用的嵌入方法,在 Electron 中也得到了很好的支持,iframe 支持 sandbox 属性,但是默认没有设置,需要显式地设置,sandbox 或 sandbox="...并不能 5. object 和 iframe 的不同 虽然 object 和 iframe 标签都是通过指定外部 URL 进行加载资源的,但是 iframe 标签内的内容不会被解析成HTML, objetc...小结 object 作为旧时代的嵌入,在 Electron 中也得到了很好的支持,测试效果与 iframe 基本一致 如果 object 的地址与渲染页面的地址同源,则可以相互直接通讯,并获取相互的上下文...应用中的嵌入页面可以控制外来内容的布局和重绘。 与 iframe不同, webview 独立于您的应用程序运行。 它拥有和你的页面不一样的权限并且所嵌入的内容和你应用之间的交互都将是异步的。

    99510

    基于drawio构建流程图编辑器

    ,本身也没有支持ESM,有大量的原型链修改,如果看过相关源码可以发现实际上是非常复杂的,代码的可读性和可维护性都不是很好,同时也没有支持TypeScript,这些都是我们需要解决的问题。...那么问题来了,我们应该如何将drawio集成到自己的项目当中,我们在这里提供了两种方案,一种是独立编辑器,这种方式是将Npm包打包到自己的项目当中,另一种是嵌入drawio,这种方式是通过iframe与部署好的...,这十个核心类并不是打包或者混淆之后的代码,也就是说其本身就是以这种形式编写的,在我们进行二次开发的时候也会感觉到比较难以维护,至于TS的支持我们本身也不能奢求,毕竟这确实是个年代非常久远的项目,毕竟在最初开发的时候...在这里我们更要关注的是如何将drawio嵌入到我们的应用当中,drawio提供了embed的方式来帮助我们集成到自己的应用中,通过iframe的方式利用postMessage进行通信,这样也不会受到跨域的限制...drawio的嵌入,具体来说就是通过iframe的方式来加载drawio,当然因为网络问题,真正投入到生产环境的话还是需要私有化部署一套才可以,私有化部署了之后也可以进行二开,当然如果在网络可以支持的情况下直接使用

    1.5K10

    vivo 商品中台的可视化微前端实践

    有以下缺点: 父窗口含有大量逻辑:父窗口需要将 vuex 的数据进行处理,然后通过 postMessage 进行传输; 数据通信方式不纯粹:vuex 和 postMessage 组合在一起,互相转换,使数据通信更加复杂和难以控制...; 不支持 Vue.set , Vue.delete 等; postMessage 只能同步字符串,不能 fn。...注意:商品中台不是主应用,它是一个嵌入外部业务的子应用,不具备外部业务嵌入它本身。 微前端和普通的前端有什么区别呢?...因此,我们把商品中台项目设计成了微前端架构,它可以很好的解决前端中台化所面临的各种问题。知道了目的,那么我们是如何去设计微前端的呢?...缺点:需要自己处理对数据变化的监听。 商品中台采取的数据通信方案是结合了上述两种方案,互相取长补短,都有使用。

    1.2K50

    如何安全的运行第三方 JavaScript 代码

    毕竟,Duktape(和类似的虚拟机)的构建正是为了以嵌入形式使用,并允许嵌入方与Duktape进行通信。...getNode(vm, this).opacity = vm.getNumber(val) return vm.undefined } }) 这个底层接口可以通过Realms沙箱很好地实现...这跟我们最初尝试使用的iframe>的区别在于,现在,插件是由两个组件组成: · 一个可以访问Figma文档并在Realms沙箱内的主线程上运行的组件。...· 一个可以访问浏览器API并在iframe>内部运行的组件。 这两个组件可以通过消息传递进行通信。...虽然这种架构使得使用浏览器API比在同一环境中运行这两个组件要繁琐一些,但是,鉴于目前的浏览器技术的状况,这是安全地运行他人Javascript代码的最佳技术,当然,随着技术的进步,将来一定会出现更好的插件创建技术

    1.1K30

    深入理解iframe

    : SAMEORIGIN 只允许同源请求,例如网页为 foo.com/123.php,則 foo.com 底下的所有网页可以嵌入此网页,但是 foo.com 以外的网页不能嵌入 X-Frame-Options...的把控交给服务器来进行处理 //js if(window !...>iframe> 这样会对iframe页面进行一系列的限制: script 脚本不能执行 不能发送 ajax 请求 不能使用本地存储,即 localStorage,cookie 等 不能创建新的弹窗和...>iframe> 常用的配置项有: 配置 效果 allow-forms 允许进行提交表单 allow-scripts 运行执行脚本 allow-same-origin 允许同域请求,比如 ajax,...这意味着 iframe 在加载资源时可能用光了所有的可用连接,从而阻塞了主页面资源的加载。如果 iframe 中的内容比主页面的内容更重要,这当然是很好的。

    4.4K10

    iframe 有什么好处,有什么坏处?

    : SAMEORIGIN 只允许同源请求,例如网页为 foo.com/123.php,則 foo.com 底下的所有网页可以嵌入此网页,但是 foo.com 以外的网页不能嵌入 X-Frame-Options...的把控交给服务器来进行处理 //js if(window !...>iframe> 这样会对iframe页面进行一系列的限制: script 脚本不能执行 不能发送 ajax 请求 不能使用本地存储,即 localStorage,cookie 等 不能创建新的弹窗和...>iframe> 常用的配置项有: 配置 效果 allow-forms 允许进行提交表单 allow-scripts 运行执行脚本 allow-same-origin 允许同域请求,比如 ajax,...这意味着 iframe 在加载资源时可能用光了所有的可用连接,从而阻塞了主页面资源的加载。如果 iframe 中的内容比主页面的内容更重要,这当然是很好的。

    4.1K10

    以嵌入式小组件库 NotionPet 为例

    在日常的工作和学习中,我期待能建立一些简单、好用的仪表盘。比如,我想要在笔记软件快速鸟瞰天气、日历、时间,进行习惯记录等操作。这些需求在已有的功能中,并没有得到很好地解决。这该怎么办呢?...在使用小组件的过程中,我突然想到,为什么不能在双链笔记中使用这些小组件呢?只要支持嵌入网页的工具,应该都可以使用小组件,而不是仅仅局限于 Notion 类软件。于是,有了这篇文章。...一、嵌入网页语法:具体的语法有所差异,见图示:Roam Research 嵌入网页语法{{iframe:URL}}葫芦笔记 嵌入网页语法{{iframe: URL}} 或者直接在编辑器页面输入 / wang...Logseq 嵌入网页语法基础语法:iframe src="URL" >iframe>高级语法:允许调整窗口尺寸。...具体如下:iframe src="URL" style="width: 100%; height: 300px">iframe>Obsidian 嵌入网页语法基础语法:iframe src="URL

    1.6K20

    为什么在代码运行时会出现内存溢出的错误,如何有效地避免和处理这种情况?

    在代码运行时出现内存溢出的错误通常是由于程序使用的内存超过了系统的可用内存限制。...内存过度分配:如果程序在运行时分配了过多的内存,超出了系统可用的物理内存或虚拟内存限制,就会导致内存溢出错误。为避免这种情况,可以评估程序的内存需求,尽量减少内存使用,合理分配内存空间。...为有效避免和处理内存溢出错误,可以采取以下措施: 避免无限递归,确保递归函数有递归终止条件。 及时释放不需要的内存,避免内存泄漏。 使用合理的数据结构和算法,减少对内存的需求。...对于大规模数据处理,可以考虑使用分块处理方式,避免一次性加载所有数据。 评估程序的内存需求,合理分配内存空间。 监测内存使用情况,及时发现和处理内存溢出问题。...总之,避免和处理内存溢出错误需要综合考虑代码逻辑、内存管理和资源限制等因素,采取合理的措施来优化程序和管理内存。

    24810

    前端资源共享方案对比-笔记:iframeJS-SDK微前端

    下一篇讲 BK-VISION如何在让用户自由选择 iframe/JS-SDK/微前端的模式共享 iframe  iframe嵌入是目前使用很广泛的一种嵌入方案,直接使用iframe标签+网页地址就可以嵌入...iframe优劣 iframe优点 使用简单: iframe嵌入是目前使用很广泛的一种嵌入方案,直接使用iframe标签+网页地址就可以嵌入。...隔离性好:主页面和嵌入页面相互隔离,不存在脚本冲突,样式影响问题 iframe缺点 iframe标签性能消耗较大,过多的iframe标签会造成页面卡顿 子应用切换,每次都要重新加载资源,速度慢 iframe...cookie无法跨域携带,子应用在做免登的时候处理麻烦 url 不同步。...版本更新:随着软件版本的更新,SDK 也可能需要更新,如果不更新,可能会影响应用程序的正常运行。 难以维护:由于 SDK 包含大量的代码,如果其中出现了问题,开发者可能需要花费大量时间来解决问题。

    1.7K10

    「面试常问」靠这几个浏览器安全知识顺利拿到了大厂offer(实践篇)

    CORS,让其可以安全地进行跨域操作; 两个不同源的 DOM是不能相互操纵的,因此浏览器中又实现了跨文档消息机制,让其可以比较安全地通信,可以通过 window.postMessage 的 JavaScript...(这个就是下面将介绍的几种伪造请求的方式),浏览器请求头中会默认携带 A 网站的 Cookie; A 网站服务器收到请求后,经过验证发现用户是登录了的,所以会处理请求。...往往是攻击者将目标网站通过 iframe 嵌入到自己的网页中,通过 opacity 等手段设置 iframe 为透明的,使得肉眼不可见,这样一来当用户在攻击者的网站中操作的时候,比如点击某个按钮(这个按钮的顶层其实是...frame busting 如果 A 页面通过 iframe 被嵌入到 B 页面,那么在 A 页面内部window 对象将指向 iframe,而 top 将指向最顶层的网页这里是 B。...所以可以依据这个原理来判断自己的页面是被 iframe 引入而嵌入到别人页面,如果是的话,则通过如下的判断会使得 B 页面将直接替换 A 的内容而显示,从而让用户发觉自己被骗。

    85820

    挖洞经验 | 综合三个Bug实现Discord桌面应用RCE漏洞

    然而,经测试发现,我并不能有效地调用类似child_process的模块实现RCE,但却可以用之前说过的覆盖方法,覆盖掉Discord Electron中内置的JS方法,干扰曝露模块的执行,以此实现RCE...当用户交流信息中的视频URL链接被嵌入到iframe中后,Discord应用会提取出该视频URL链接。...由于Electron不会把“Web页面之外的JS代码”加载进入iframe中,所以即使我覆盖了其iframe内置的JS方法,还是不能调用Node.js相关功能。...,但我惊奇地发现,iframe不知怎的对导航机制竟然没有限制。...POC视频:https://tinyurl.com/y5nx6zjy 漏洞处理 我通过Discord众测项目上报了这三个漏洞,之后,Discord安全团队禁用了Sketchfab的嵌入功能,然后在iframe

    2.5K30

    本篇还玩“障眼法”,一文解读HTML内联框架Iframes。

    很简单,可以用iframe来解决,那啥是iframe?本篇的主题就是它,接下来我们一一解剖它的用法。嵌入第三方url页面我们先来两个测试场景,对比一下,啥场景呢?就是可被嵌入的页面和不可被嵌入的页面。...下面这2个页面是不可被嵌入的嵌入python的官网主页iframe> 效果如下:图片下面这2个https的页面是可被嵌入的嵌入zabbix官网的主页嵌入?而有的页面不能被嵌入呢?答案就是:同源策略的限制所致,第三方的web服务器端并没有允许iframe的访问,这就是核心问题之所在。...原因就是style中的CSS属性border在搞鬼,它的值为none,也就是去掉边框的意思。再把宽度和高度调大,撑满整个页面,这个障眼法的效果就出来了。是不是很好玩呢?

    58110

    经验之谈-关于实际项目微前端优化

    qiankun 可以用于任意 js 框架,微应用接入像嵌入一个 iframe 系统一样简单(想知道更多请去官网) ?...而且,对于陈年已久的Jquery多页面的老项目,qiankun对多页应用没有很好的解决办法。每个页面都去修改,成本很大也很麻烦,但是使用 iframe 嵌入这些老项目就比较方便。.../#/iframe/test/dist/index.html 复制代码 配置代理解决本地访问跨域 由于原来的项目,属于直接访问文件,所以子项目的打包需配置相对路径 因为dist文件是需要放在服务器上运行的...所以使用公共bus将基层信息,传播给子项目 运行方式 本地开发运行两个项目,一个是基层的一个是独立的项目 最后 最后和某位大佬有个讨论点,就是iframe做微前端不好。...但个人觉得,用哪个还是要看实际情况,针对这次项目优化,你的目标是啥。qiankun.js就牛了?是的蛮牛的,但是不能因为iframe比较上年纪,就嫌弃。。。。

    1.5K50

    标签

    /iframe">iframe> 标准属性 属性 描述 H5新 height 像素格式,或百分比格式指定frame的高度。 name 像素格式,或百分比格式指定frame的高度。...sandbox 启用一系列对iframe>中内容的额外限制。allow-same-origin: 允许将内容作为普通来源对待。如果未使用该关键字,嵌入的内容将被视为一个独立的源。...link(拖动数据会产生指向原始数据的链接)。allow-top-navigation:嵌入的页面的上下文可以导航(加载)内容到顶级的浏览上下文环境(browsing context)。...allow-forms: 允许嵌入的浏览上下文可以提交表单。如果该关键字未使用,该操作将不可用allow-scripts: 允许嵌入的浏览上下文运行脚本(但不能window创建弹窗)。...allow-forms: 允许嵌入的浏览上下文可以提交表单。如果该关键字未使用,该操作将不可用 allow-scripts: 允许嵌入的浏览上下文运行脚本(但不能window创建弹窗)。

    91620
    领券