- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个加载 iframe 的网站。父窗口中的代码注册一个 onbeforeunload 监听器。
当前 iframe 包含一个带有触发点击处理程序的按钮:
window.open(/#/frag,'_parent')
在我测试过的所有浏览器中(除了 IE8/IE9),这都具有加载父片段而不触发 onbeforeunload 事件的所需行为。但是,如果我更改 iframe 的点击处理程序以触发:
parent.location.href='/#/frag'
它在 IE 8/9 中也能正常工作。
谁能解释一下这种行为吗?
我在下面提供了一个简单的示例:
index.html
<!DOCTYPE html>
<html>
<head>
<script>
function registerUnloadListener(){
window.onbeforeunload = function (e) {
return "onbeforeunload";
};
}
</script>
</head>
<body onload="registerUnloadListener()">
<iframe width="100%" src="iframe.html"></iframe><br/>
</body>
</html>
iframe.html
<!DOCTYPE html>
<html>
<head>
<script>
function setParentLocation(frag){
parent.location.href = frag;
}
function openWindowInParent(frag){
window.open(frag,'_parent');
}
</script>
</head>
<body>
onbeforeunload triggered (as expected) -->
<a href="javascript:void(0);" onclick="setParentLocation('/')">
parent.location.href = '/'
</a><br/>
onbeforeunload NOT triggered (as expected) -->
<a href="javascript:void(0);" onclick="setParentLocation('/#/frag')">
parent.location.href = '/#/frag'
</a><br/>
onbeforeunload triggered for IE8/IE9 only (unexpected) -->
<a href="javascript:void(0);" onclick="openWindowInParent('/#/frag')">
window.open("/#/frag",'_parent')
</a>
</body>
</html>
预先感谢您的任何反馈。
最佳答案
尝试将 return false;
添加到 anchor 的 onclick
事件中。这是一个已知问题,在 IE 中使用 href="javascript:void(0);
锚定会触发 onbeforeunload
,但添加 return false;
点击处理程序解决了这个问题。
<a href="javascript:void(0);" onclick="openWindowInParent('/#/frag'); return false;">
window.open("/#/frag",'_parent')
</a>
关于javascript - IE8+, window.open(url/#/frag ,'_parent' ) 与 iframe 中的parent.location.href=url/#/frag,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24972684/
我有一个加载 iframe 的网站。父窗口中的代码注册一个 onbeforeunload 监听器。 当前 iframe 包含一个带有触发点击处理程序的按钮: window.open(/#/frag,'
我有一个简单的管道描述符 let p = MTLRenderPipelineDescriptor() ... p.colorAttachments[0].pixelFormat = .bgra8
对于Android开发者来说虽然使用了可以自动管理内存的Java语言,但是对于内存管理不当,可能你的应用不断出现类似INFO/dalvikvm-heap(10798): Grow heap (fra
我有一个 ViewPager,其 pageOffscreenPageLimit 设置为 1(总共 3 页)。我用它来为每个页面显示 4 个位图。位图是异步加载的,按比例缩小的,所有这些都是为了避免 O
sk_buff 有两个地方可以存储下一个碎片数据: skb_shinfo(head)->frag_list skb_shinfo(head)->frags[] 这两种处理碎片的方式有什么区别? 最佳答
当应用程序从初始屏幕加载到主页时会发生这种情况。它只发生在设备上而不是模拟器上: 05-17 08:10:16.627: I/dalvikvm-heap(14021): Grow heap (frag
这个问题在这里已经有了答案: How to read the content of a file to a string in C? (12 个答案) 关闭 5 年前。 我正在用 NDK 示例编写一
我正在尝试启动一个带有 Fragment 的 Activity,该 Activity 正在执行 QR 扫描,我正在为此使用这个库 > https://code.google.com/archive/p
自从每次我尝试构建我的项目时都将我的 flutter 更新到 3.3+,控制台上出现了这个错误: Target web_release_bundle failed: ShaderCompilerExc
我正在使用 opencv 库(面部检测示例)开发一个 android 图像捕获应用程序。我的目标是捕获 5 张图像并将其发送到我的网络服务。抓取图像后,将Bitmap图像转换为base64字符串并存储
自从每次我尝试构建我的项目时都将我的 flutter 更新到 3.3+,控制台上出现了这个错误: Target web_release_bundle failed: ShaderCompilerExc
我刚刚发现了 OpenGL Shader Builder在 Apple 的开发者工具中。好像很有用。唯一的麻烦是它似乎坚持在保存对话框中使用 *.vs 和 *.fs,而我通常分别使用 *.vert 和
我正在用 for 循环中的对象编写一个 JSON 文件 当传输到 JSON 文件的数据量增加时,我在 Logcat 中看到以下错误: I/dalvikvm-heap: Grow heap (frag
你好,我有一个问题困扰了我一个星期。当我打开 fragment QRcode 阅读器时,应用程序是建立在 fragment 上的。当我切换到另一个并再次返回时,它工作正常,然后发生错误。我认为 onD
我正在使用 OpenGL 通过 Assimp 显示 3d 模型文件,例如 STL 和 obj。 我有一个包含一组点和一个对应值(不一定在对象上)的文件,我想根据形状的每个顶点在所有值范围内的位置为它着
我是一名优秀的程序员,十分优秀!