我有一个加载新标签页的iframe。点击缩略图虽然它在iframe中加载。我希望在window.top
中加载iframe中的任何后续加载。如果不单独设置缩略图以使用target=_blank
,这是否可行。因为如果用户删除缩略图,则会由另一个未设置此target
属性的其他人填充。
我给了这个javascript和html5,因为相同的知识适用于突破框架。
如果没有针对此的javascript / html5解决方案,这些是我对选项的想法:
unload
个事件。但是在卸载事件对象中,我无法找到它要去的新网址http-on-modify-request
观察者并在修改检查loadContext
窗口是否为iframes contentWindow,如果是,则中止该请求并将其加载到window.top
中,我认为这是过度杀伤对于应该如此简单的事情答案 0 :(得分:1)
click
事件侦听器。.parentElement
树,直至找到<a>
。.preventDefault()
。示例:
addEventListener("click", function(e) {
let target = e.target;
while (target && !target.href) {
// Find the parent <a>, if any
target = target.parentElement;
}
if (!target) {
// Nothing found;
return;
}
e.preventDefault();
alert(target.href);
// window.top.location = target.href; ?!
});
在控制台中对此进行了测试,似乎可以正常工作。