首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    获得同级iframe页面的指定ID元素的几种实现方法

    1.JS实现:   var object= window.parent.frames("要获得的iframe的name").contentDocument.getElementById("元素id");...2.jquery实现:   var object =$( "元素id", window.parent.frames("iframe的name").contentDocument); iframe获得父页面指定...id的元素的方法:   var object = $("元素id", window.parent.document); 父页面获得iframe子页面里指定id元素的方法:   var object =...$(this).contents().find("元素id"); 注:window.frames("iframe的name")、document.frames("iframe的name")和window.frames...["iframe的name"]、document.frames[""iframe的name"]的区别   1.第一个和第三个具有浏览器的兼容性,第二个和第四个只有在IE和Opera浏览器支持,而别的不支持

    1.9K20

    无界微前端是如何渲染子应用的?

    将 UI 渲染到 shadowRoot 我们先来看看现代的前端框架,是如何渲染 UI 的 以 Vue 为例,需要给 Vue 指定一个 DOM 作为挂载点,Vue 会将组件,挂载到该 DOM 上 import.../comp.vue' // 传入根组件 const app = createApp(Comp) // 指定挂载点 app.mount('#app') 挂载到 #app,实际上使用 document.querySelector...查找 DOM,然后挂载到 DOM 里面 但是正如上一小节说的,在无界微前端会有问题: • 如果在 iframe 中运行 document.querySelector,就会在 iframe 中查找就会查找不到...,有些需要挂载到 iframe 中。...这里直接举个例子: • onunload 事件,需要挂载到 iframe 中 • onkeyup 事件,需要挂载到主应用的 window 下(iframe 中没有 UI,UI 挂载到主应用 document

    1.3K30

    无界微前端是如何渲染子应用的?

    将 UI 渲染到 shadowRoot我们先来看看现代的前端框架,是如何渲染 UI 的以 Vue 为例,需要给 Vue 指定一个 DOM 作为挂载点,Vue 会将组件,挂载到该 DOM 上import.../comp.vue' // 传入根组件const app = createApp(Comp)// 指定挂载点app.mount('#app')挂载到 #app,实际上使用 document.querySelector...查找 DOM,然后挂载到 DOM 里面但是正如上一小节说的,在无界微前端会有问题:如果在 iframe 中运行 document.querySelector,就会在 iframe 中查找就会查找不到,...,有些需要挂载到 iframe 中。...这里直接举个例子:onunload 事件,需要挂载到 iframe 中onkeyup 事件,需要挂载到主应用的 window 下(iframe 中没有 UI,UI 挂载到主应用 document 的 shadowRoot

    5.3K30

    怎么防止同事用Evil.js的代码投毒

    我们还可以在浏览器里通过iframe创建一个被隔离的window, iframe被加载到body后,获取iframe内部的contentWindowlet iframe = document.createElement...('iframe')iframe.style.display = 'none'document.body.appendChild(iframe)let {JSON:cleanJSON} = iframe.contentWindowconsole.log...ShadowRealm api,已经stage3了,可以手动创建一个隔离的js运行环境,被认为是下一代微前端的利器,不过现在兼容性还不太好,代码看起来有一丢丢像eval,不过和vm的问题一样,需要我们指定某段代码执行更多...Promise.prototype.then和我们备份的是否相等,就可以甄别出原型链有没有被污染 ,我真是一个小机灵首先我们要备份相关函数,由于我们需要检查的不是很多,就不需要对window进行遍历了,指定几个重要的...checkNative就可以啦,存储在_snapshot和_prototype里的内容,嘎嘎遍历出来,和当前运行时获取的JSON,Promise.prototype.then对比就可以啦,而且我们有了备份, 还可以一个

    3.1K20

    怎么防止同事用Evil.js的代码投毒

    创建一个被隔离的window, iframe被加载到body后,获取iframe内部的contentWindowlet iframe = document.createElement('iframe')...('iframe')iframe.style.display = 'none'document.body.appendChild(iframe)let {JSON:cleanJSON} = iframe.contentWindowconsole.log...ShadowRealm api,已经stage3了,可以手动创建一个隔离的js运行环境,被认为是下一代微前端的利器,不过现在兼容性还不太好,代码看起来有一丢丢像eval,不过和vm的问题一样,需要我们指定某段代码执行更多...Promise.prototype.then和我们备份的是否相等,就可以甄别出原型链有没有被污染 ,我真是一个小机灵首先我们要备份相关函数,由于我们需要检查的不是很多,就不需要对window进行遍历了,指定几个重要的...checkNative就可以啦,存储在_snapshot和_prototype里的内容,嘎嘎遍历出来,和当前运行时获取的JSON,Promise.prototype.then对比就可以啦,而且我们有了备份, 还可以一个

    3.7K20

    nf-Press —— 在线文档也可以加载组件和编写代码

    组件定位 如果组件只能在文档末尾加载,那么不是太好看,所以还需要一个“定位”功能,在文档里面指定加载位置。...我们可以直接在 md 格式的文档里面一个div,设置属性即可: <div id="test2" data-key="testComponent" data-props='{"msg":"div...这样在查看文档的时候,组件就会被加<em>载到</em>这个div里面。 看看效果 在线编写代码、修改代码、运行代码 我知道有很多第三方网站提供了完整的在线写代码的功能,一些官方文档也在用,但是总感觉有点“距离感”。...<em>iframe</em> + CDN 搞不定问题怎么办?绕过去吧。于是开启了古老的 <em>iframe</em>。... import { defineComponent, watch

    35820

    作为window对象属性的元素 多窗口和窗体

    div> 1111 1111 好吧,因为浏览器厂商可以随便给属性...当一个脚本这样做,多个窗口可以相互操作 iframe 已经处于半废弃的inframe标签。挺无奈的,已经快废了。 不过学习还是学习一下吧 iframe是用来嵌套多个文档的。...由iframe所创建的嵌套浏览上下文是用自己的window对象表示的。每一个iframe都是一个独立的window对象。 对于客户端js来说,窗口,标签页,iframe和框架都是浏览上下文。...(或者递归打开的窗口),脚本才能通过名字指定存在的窗口,或者如果是一个窗口内嵌在另一个窗口里的窗体,那么在它们的脚本之间可以相互导航。...并同时可以作为标签a和标签form的taget的值,表示加载到哪 open第三个参数表明如何打开这个标签的,以及大小(一般弹窗广告喜欢这样做) // 打开允许改变大小的浏览器的窗口,包含地址栏,工具栏和地址栏

    2.1K50

    墨瞳漫画h5一期 vuejs总结

    router是通过html5 history的pushState来纪录当前滚动位置的,切换路由的时候,把当前位置push进去,用户后退时,会触发onpopstate事件,这个时候再把位置取出来并滚动到指定位置...也就是watcher里还要一句如上的滚动。...= document.createElement('iframe'); iframe.src = '....then((data) => {this.busy = false;}) } 但是这个组件在路由切换的时候会出问题,routerView被移除时,组件会触发加载(大概是因为页面高度突然塌陷),而且会一直加载到我们自己设置的停止条件...main.js 另外,可以修改下生成的静态文件,vue-cli默认声称的静态文件时间戳是加在文件名上的,如app.fefdfd7s8f78sd7.js,这样版本迭代很快后会使服务器上积压过多无用文件,我们希望这样时间戳

    1.1K10

    web之攻与受(劫持与注入篇)

    就是在小姐姐图片上一层透明的iframe,把透明通道打开后,就看到这个隐藏的内容了 ? 小姐姐最新动态的fake按钮将和黑客想要你点击的按钮重合。...该响应头有三个值可选,分别是: DENY,表示页面不允许通过 iframe 的方式展示 SAMEORIGIN,表示页面可以在相同域名下通过 iframe 的方式展示 ALLOW-FROM,表示页面可以在指定来源的...网络劫持一般指网站资源请求在请求过程中因为人为的攻击导致没有加载到预期的资源内容。网络请求劫持目前主要分为两种:DNS劫持与HTTP劫持。下面具体看看两种方式各是什么样的。...dns劫持 DNS劫持DNS劫持通常是指攻击者劫持了DNS服务器,通过某些手段取得某域名的解析记录控制权,进而修改此域名的解析结果,导致用户对该域名地址的访问由原IP地址转入到修改后的指定IP地址的现象...以一段 Node.js 为例,假如业务需求是在接口中需要从 github 下载用户指定的 repo: const exec = require('mz/child_process').exec; let

    1.5K10
    领券