草庐IT

iframe_window

全部标签

javascript - 如何检查消息(postMessage)来自哪个跨域iframe?

我知道MessageEvent有source属性,它是发送消息的窗口对象。现在如何让这些信息检查主文档中的哪个iframe(当然还有消息到达的主文档中)是该特定消息的来源?是否只有检查event.source窗口对象上的location.href的可用选项,然后循环所有iframe以检查哪个匹配?如果主文档中存在具有相同源url的iframe怎么办? 最佳答案 遍历页面上的所有iframe并对它们的window对象进行标识比较。window.addEventListener('message',function(e){if(e.or

javascript - 如何在没有 iframe 的情况下创建新的窗口对象?

如何制作新的Window对象,myWindow,独立于window(因此修改例如myWindow.Array.prototype不会影响window.Array.prototype),无需创建?目前我是这样做的functionnewWindow(){varmyFrame=document.createElement('iframe'),myWindow=undefined;myFrame.style.display='none';myFrame.src='javascript:undefined;';document.body.appendChild(myFrame);myWindow

javascript - 使同一域 iframe 安全

tl;dr我可以在iframe上安全地执行不受信任的脚本吗?背景故事:我正在尝试makesecureJSONPrequests.许多旧版浏览器不支持WebWorkers,这意味着我提出的当前解决方案并不是最优的。我想我可以创建一个并在其中加载脚本。该脚本将执行一个JSONP请求(创建一个脚本标签),该请求将向主页发布一条消息。主页会收到消息,执行回调并销毁iframe。我设法dothissortofthing.functionjsonp(url,data,callback){variframe=document.createElement("iframe");iframe.style.

javascript - 调用 window.open() 在 IE 11 + Windows 8.1 Preview 上返回 null

我正在做这样的事情,其中​​MyConfig是一个aspx页面。winOpen=window.open('/Account/Register','MyConfig','toolbar=no,status=no,location=no,menubar=0,resizable=yes,scrollbars=yes,width='+wWidth+',height='+wHeight+',top='+wTop+',left='+wLeft);winOpen.focus();它返回null。它在chrome+WIndows8.1预览版中工作正常,但在IE11中不工作。编辑我在问题中又添加了一行,

javascript - 是否可以在没有 iframe 和任何 javascript 的情况下使用 reCAPTCHA?

出于安全原因,我们在网络应用程序中禁用了iframe和javascript。现在我们想在登录过程中实现reCAPTCHA。我看到它在页面上嵌入了一个iframe,该页面被禁用,因此无法看到。有没有一种方法可以在不使用iframe或javascript的情况下实现reCAPTCHA? 最佳答案 我正在为没有Javascript的残疾人(即盲人)看这个问题。一个丑陋的解决方案可能是从服务器调用ReCaptcha,获取生成的HTML,将其传递给浏览器,在用户单击时提交表单,然后使用Javascript从您的服务器提交用户的输入。看起来Go

javascript - window.open 在第二台显示器上

window.open('branchMonitoring/','TestingDualMonitor','resizable=1,scrollbars=1,fullscreen=0,height=200,width=650,screenX=0,left=1280,toolbar=0,menubar=0,status=1');我使用这段代码在第二台显示器上打开了一个新窗口,但新窗口仍然在第一台显示器上打开并且不能超过第一台显示器的边界。我试图将“左”更改为更高的值,但仍然没有运气。请兄弟们帮帮我。我正在使用最新的googlechrome浏览器并使用windows8双显示器。请注意,当我

javascript - Chrome 扩展 : identify web requests of background-page iframe?

我正在编写一个Chrome扩展程序,它会代表用户定期检查网页。为了不引人注目,该页面被加载到扩展程序隐藏背景页面上的iframe中。是否可以仅识别此iframe发出的网络请求?我最初的实验(见下文)似乎表明这很棘手。获取特定选项卡的所有Web请求很容易:您拥有tabId,并且可以使用该tabId过滤Web请求(通过WebRequestAPI)。但是对于后台页面iframe,不清楚“tabId等效”标识符是什么,或者如何使用它来过滤Web请求。有什么想法吗?我最初的实验细节如下。frameId值看起来很有希望,但我不认为它在扩展程序中是唯一的。此问题已针对Firefox提出:Identi

javascript - 在 Windows 10 通用应用程序中从 JavaScript 调用 C# 组件

我正在尝试在我的Windows10通用应用程序(JavaScript)中使用Windows运行时组件(C#)。我在Windows8.x商店应用程序中找到了如何做到这一点:https://msdn.microsoft.com/en-us/library/hh779077.aspx但此解决方案不适用于Windows10通用应用程序。类未在JavaScript中注册是抛出异常。WRC代码:namespaceSampleComponent{publicsealedclassExample{publicstaticstringGetAnswer(){return"Theansweris42.";

javascript - Windows/IE11 中范围元素的 getBoundingClientRect 不正确

在IE11中使用范围对象获取BoundingClientRect时,它会报告错误的数字。它报告高度为128,而实际高度为74。它报告顶部偏移为8,而实际顶部偏移为35。这是一个已知错误吗?有没有办法在windowsie11中获得准确的选择数字。vardiv=document.querySelectorAll('div')[0];vart=div.childNodes[0];varrange=document.createRange();range.setStart(t,0)range.setEnd(t,1)console.log(range.getBoundingClientRect(

javascript - Safari 中是否有 window.performance.getEntriesByType 的 polyfill?

看起来window.performance.getEntries和window.performance.getEntriesByType没有在Safari中定义。是否有针对这些功能的polyfill?还是有人创造了某种替代方案?我想做的是获取页面中加载的所有资源。(所有图片、css和js文件) 最佳答案 由于Safari不以任何JavaScript方式提供该信息,因此不可能为此创建Polyfill。别找了。你不会有运气的:(PS.:小心这个答案。window.performance上的一些功能可以用polyfill实现,但不是我要求