想做一个iframe网页弹窗,实现一下功能:
1.iframe内的所有超链接均在弹窗内部跳转,不会跳转到父页面,既弹窗相当于一个小型的浏览器。
难点:很多网站中的超链接默认在新标签页中打开,比如百度百科词条中的超链接。这种情况下,iframe总会跳转到浏览器的主页面中。
答案请别说怎么做,因为很多答案就是不行。
请直接上代码,越完整越好。
先看效果
<body>
<h1>父页面</h1>
<!-- iframe中的sandbox属性可设置iframe页面中的链接不重定向到父级页面 -->
<!-- 在PC端: -->
<iframe src='children.html' id="iframeWrap" sandbox="allow-forms allow-scripts allow-same-origin allow-popups"></iframe>
<!-- 在移动端 -->
<!-- <iframe src='children.html' id="iframeWrap" sandbox="allow-forms allow-scripts allow-same-origin"></iframe> -->
</body>
子页面
<h1>子页面</h1>
<a href="https://baijiahao.baidu.com/s?id=1715457074556366610&wfr=spider&for=pc" >
百度跳转
</a>
如果iframe是你自己的网页,你可以控制,是别人的,你就无法控制,因为链接加上target="_blank" 这个的或者使用windows.open打开的,你基本无法控制
哈喽,iframe由于跨域限制,不能操作不属于自己页面内的元素。由于百度百科本身的a标签设置的target是_blank,即打开新页,而我们又不能对页面元素进行修改,所以无解。
当然,如果写成谷歌插件可以实现这个功能,需要搞的话我可以给你发代码。