html iframe坑

时间: 2023-10-17 19:36:21 浏览: 36
HTML中使用iframe主要是为了复用代码,避免重复编写相同的导航栏等内容。 通过iframe,可以实现父页面和子页面之间的DOM访问。父页面可以通过`$("iframe").contents().find(".子页面DOM节点class名")`来访问子页面的DOM节点,而子页面可以通过`$('.父页面DOM节点class名', parent.document)`来访问父页面的DOM节点。 关于iframe的属性src,经过实践发现,在浏览器前进或后退时,src是不会变化的。因此,如果想要在后退时获取离开页面时的状态,不能通过src来获取参数。一种解决方案是将状态存储在父页面某个节点的data属性中,这样每次返回时可以从父节点中获取数据。然而,这种方法只适用于状态较少的情况。 对于历史记录,不同浏览器有不同的策略。在Firefox中,无论是静态存在于HTML中的iframe还是在页面加载完成后动态创建的iframe,当其src或location改变时,都会被记录到浏览器的历史记录中。而在IE、Chrome中,两种类型的iframe的src或location改变都会被记录到浏览器的历史记录中。而在Safari中,无论是哪种类型的iframe,其src或location改变都不会被记录。 综上所述,虽然使用iframe能够达到一些复用代码和访问DOM的目的,但也存在一些坑。因此,可以考虑使用React或Vue的嵌套路由来替代iframe。当然,这只是一种想法,具体使用时需要根据项目需求进行评估和实践。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [记录一下iframe的坑](https://blog.csdn.net/weixin_43841393/article/details/105303839)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [iframe的坑](https://blog.csdn.net/Benxiaohai_311/article/details/123134685)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

相关推荐

最新推荐

使用iframe window的scroll方法控制iframe页面滚动

在页面中如何控制内嵌的iframe滚动呢?方法是使用iframe window的scroll方法,大家可以参考下面的示例

jQuery实现跨域iframe接口方法调用

页面a.html域名为www.a.com嵌入页面http://www.b.com/b.html,b.html要调用a.html中的js函数,由于两个页面不在一个域中,会提示没权限。如何解决该问题呢,请看下面示例代码。

iframe子页面获取父页面元素的方法

代码如下: 代码如下: $(“#objid”, document.iframes(‘iframe’).document) 或 代码如下: $(document.getElementById(‘iframeId’).contentWindow.document.body).html() $(document.getElementById(‘iframeId...

a标签的target链接指向iframe的方法

主要介绍了a标签的target链接指向iframe的方法,切记不是用Id来做指向的目标而是name,需要的朋友可以参考下

在vue中实现嵌套页面(iframe)

主要介绍了在vue中实现嵌套页面(iframe),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

MIL_STD_1364J.537.pdf

MIL_STD_1364J.537.pdf

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire

粒子群多目标算法matlab代码【MATLAB代码实现】定义优化问题参数

# 1. 粒子群多目标算法简介 ## 1.1 什么是粒子群算法? 粒子群算法是一种基于群体智能的优化算法,灵感来源于鸟群或鱼群等生物群体的行为。每个“粒子”代表问题空间中的一个候选解,而整个粒子群代表了候选解的一个群体。粒子在解空间中搜索最优解,通过个体的经验和群体的协作来不断调整自身位置和速度,从而逐步靠近最优解。 ## 1.2 粒子群算法在多目标优化中的应用 粒子群算法最初是针对单目标优化问题提出的,但后来被扩展应用到了多目标优化领域。与单目标优化不同,多目标优化需要考虑多个冲突的目标函数,因此粒子群算法的应用在多目标优化中具有一定的挑战性。 ## 1.3 粒子群多目标算法原理解

hbase中时间戳的精确度和hbase中列族和列名的分隔符是什么

我已经回答了关于HBase中时间戳的精确度的问题,现在回答你的第二个问题: 在HBase中,列族和列名的分隔符是冒号(:)。例如,如果你有一个列族为“info”,列名为“name”的列,那么在HBase中的完整列名将是“info:name”。这个分隔符是在HBase的设计中被硬编码的,不能更改。这个分隔符在HBase的API中也得到了体现,例如在Java API中,可以使用“:`”来将列族和列名分隔开来,如下所示: ```java Get get = new Get(Bytes.toBytes("rowkey")); get.addColumn(Bytes.toBytes("info"),

spring boot应用启动原理分析.docx

spring boot应用启动原理分析.docxspring boot应用启动原理分析.docxspring boot应用启动原理分析.docxspring boot应用启动原理分析.docxspring boot应用启动原理分析.docxspring boot应用启动原理分析.docxspring boot应用启动原理分析.docxspring boot应用启动原理分析.docx