草庐IT

javascript - 两个 iframe 子级之间使用 postMessage 进行通信

我有一些嵌入代码,用户可以将它们放在他们的网站上。它在页面上创建两个子iframe。我想让那些child能够交流。我正在使用javascript的window.postMessagehttps://developer.mozilla.org/en-US/docs/DOM/window.postMessage由于两个iframe子级不能直接通信,我使用父级作为消息的中继。但是,父级可以位于不同的域中,因为它是可嵌入代码。当所有三个(parent和两个child)都在同一个域中时,这很容易,我使用安全检查检查e.origin是我自己的网站#coffeescript#host="http:/

javascript - window.close(), self.close() 不适用于 mozilla firefox

我想在注销时关闭窗口。我用过window.close(),self.close(),varwin=window.open("","_self");win.close();window.parent.close();以上这些我都用过,它们在IE中都有效,但在MozillaFirefox中无效。请给我解决方案。谢谢。 最佳答案 我尝试查看有关window.close()的所有主题并发现:如果我们在_self上打开某些东西,IE/Chrome/Safari(?)接受关闭,所以通常top.open('','_self','');top.cl

javascript - "Implied Global variables"有哪些问题?

JavaScript:TheGoodParts将这些类型的声明定义为错误的:foo=value;这本书说“JavaScript使被遗忘的变量成为全局变量的策略创造了很难发现的错误。”除了典型全局变量的通常危险之外,这些隐含的全局变量还有哪些问题? 最佳答案 正如关于thisanswer的评论中所讨论的那样,设置某些值可能会产生意想不到的后果。在Javascript中,这更有可能是因为设置全局变量实际上意味着设置window对象的属性。例如:functionfoo(input){top=45;returntop*input;}foo(

javascript - Chrome JavaScript 调试 : how to break when a value changes

我正在调试一个大型JavaScript代码库,在某些时候,刷新页面时“控制台”变量会变为空。有没有办法在控制台上设置监视并在该值更改时(或当条件(console==null)为真时)使JavaScript中断执行?我在Windows7上使用Chrome。 最佳答案 下面的答案不适用于window.console因为console(像其他浏览器本地环境变量一样)被特殊对待。任何向console赋值的尝试都只会“掩盖”原始值;它不会取代它。您无法检测到console值何时更改,但您可以删除window.console以恢复环境提供的原始

javascript - MyFunction() 与 window.setTimeout ('MyFunction()',0)?

在javascript中,这两者之间有什么不同吗://callMyFunctionnormalwayMyFunction();//callMyFunctionwithsetTimeoutto0//window.setTimeout('MyFunction()',0);之所以问,是因为最近遇到这样的情况,只有用setTimeout(0)调用函数,代码才能生效。据我了解,setTimeout(0)与直接调用函数完全相同,因为您没有设置任何延迟。但是从我看到它在代码中的工作方式来看,setTimeout(0)似乎是最后执行的。有人能准确说明setTimeout(0)是如何按照其他函数调用的顺

javascript - 不验证直接使用window.location.href是否安全

在没有任何验证的情况下使用window.location.href是否安全?例如:varvalue=window.location.href;alert(value);从上面的例子来看,它是否容易受到跨站脚本(XSS)攻击?如果是,那又如何呢?攻击者如何将window.location.href的值修改为恶意内容?编辑(第二种情况)这是网址:www.example.com?url=www.attack.com假设我有一个getQueryString()函数,它会在未经验证的情况下返回值。varvalue=getQueryString('url');window.location.hre

javascript - 检查 div 在窗口中是否可见?

我有一个带有固定导航并使用滚动脚本的单页站点,与此非常相似:http://www.ivanjevremovic.in.rs/live/temptation/single/orange/index-cycle-slider.html我正在寻找一种方法来检查窗口中哪些部分是可见的,以便在使用浏览器滚动条时在导航栏上设置事件状态,有什么想法吗? 最佳答案 这是您需要的所有变量...var$myElt=$('.myElement');//whateverelementyouwanttocheckvar$window=$(window);//

javascript - 如何使用 addEventListener 在 Firefox 中获取错误事件详细信息?

我试图理解为什么Firefox(我使用的是15,但即使在夜间也一样)在尝试访问错误事件信息时表现得不像WebKit。这个在任何地方都有效:window.onerror=function(message,lineno,filename){}但我当然不想使用它。正确的做法是:window.addEventListener('error',function(e){console.log(e.message);},false);不幸的是,这个只能在WebKit中使用。在Firefox中调用处理程序,但e事件几乎是空的:没有消息、没有行号、没有文件名属性。这里是最简单的测试:http://jsb

javascript - 调用 window.open 时 firefox 中的问题

当我在顶点的图表链接中调用此代码时javascript:window.open('http://google.pt','mywindow','width=400,height=200','bReplace=true');它打开一个带有google页面的新窗口,但将图表页面放在一个空白页面上,上面写有[objectWindow]如何维护图表页面? 最佳答案 您需要强制表达式不返回值:javascript:void(window.open(...)) 关于javascript-调用windo

javascript - 如何在父窗口调整大小时调整 iframe 的大小

我不认为这不是另一个“根据内容高度调整iframe大小”的问题。我实际上想根据父窗口的大小动态调整iframe的大小。对于JSFiddle爱好者,我有一个例子here对于那些想查看SO上的代码的人:CSS:body{margin:0px;padding-top:78px;padding-right:0px;padding-bottom:25px;padding-left:0px;min-height:0px;height:auto;text-align:center;background-color:lightblue;overflow:hidden;}div#header{top:0