小编Mic*_*les的帖子

在iframe中使用window.open的唯一弹出窗口

我有一个窗口打开(一个iFrame url,uniqueID,windowparams).iFrame位于单页应用程序中,并托管在另一台服务器中.每次刷新或更改页面,然后返回到IFrame页面,然后尝试启动相同的页面window.open.它不是刷新已打开的窗口,而是创建同一窗口的实例.在检查window.name每个弹出窗口时,它返回uniqueID与其相同的内容window name.如果将URL设置为空白,则其行为与预期一致.但是当设置了url时,它会创建一个新的窗口实例.

  • iFrame window.open在被销毁时表现得像那样吗?
  • 我尝试在本地运行iFrame源,即使刷新后窗口打开也能正常运行.
  • 我试过IE,Firefox和Chrome,它返回了相同的行为.

更新:

Mike通过添加iFrame源的沙箱属性成功修复了Webkit浏览器的行为.现在该window.open方法按预期工作,而不是创建相同窗口的新实例window.name.

然而,迈克仍然没有运气与Firefox.如果有人可以为此工作,我将非常感激.

以下视频中具有sanboxed属性的iFrame的Webkit浏览器行为.

看到父级,即使刷新仍然可以检测到已经打开了同名的弹出窗口. https://youtu.be/z5_xXRjY8Ow

以下视频中具有sanboxed属性的iFrame的Firefox行为.

刷新父窗口时,浏览器无法检测到已打开的弹出窗口,并创建另一个弹出窗口的实例window.name. https://youtu.be/uHaDveW1Sd0

是否有一种解决方法可以让Firefox像Webkit浏览器一样工作?

更新:

Mike发现在window.open中使用空白URL在firefox中正常运行.但是仍然如何解决这个哈哈.

更新:

这是约翰尼!呃Mike意味着另一个测试案例.尝试使用webkit浏览器和firefox.打开弹出窗口后,刷新页面然后打开另一个弹出窗口webkit浏览器将只有一个窗口实例,但是firefox会创建一个新窗口. console.log(window.name)在打开的弹出窗口中,您将获得'Mike'作为窗口名称 https://bug1295839.bmoattachments.org/attachment.cgi?id=8782242

javascript firefox

15
推荐指数
1
解决办法
1414
查看次数

angularjs指令 - 获取元素绑定的文本内容

如何根据角度js指令获得绑定的值restrict: 'A'

<span directiverestrict> {{binding}} </span>
Run Code Online (Sandbox Code Playgroud)

我尝试使用elem[0].innerText但它返回精确的绑定'{{binding}}'而不是绑定的值

.directive('directiverestrict',function() {
    return {
        restrict:'A',
        link: function(scope, elem, attr) {
            // I want to get the value of the binding enclosed in the elements directive without ngModels
            console.log(elem[0].textContent) //----> returns '{{binding}}'
        }
    };
});
Run Code Online (Sandbox Code Playgroud)

angularjs

4
推荐指数
2
解决办法
5549
查看次数

标签 统计

angularjs ×1

firefox ×1

javascript ×1