工作小问题记录

1,变换iframe的src导致的browser history增加了

一个h5页面,被嵌入到app的webview中。这个页面中包含一个iframe用来加载视频地址。后续会根据情况多次改变这个iframe的src来切换视频。发现如此这般,点击‘后退’就会后退到iframe为上个src的当前页面,而不是后退到这个h5页面之前。原因就是每次改变iframe的src就增加了一次browser history。在网上查了下,说是只有用这种方式:

window.frames['ifrmId'].location.replace(url);

才能避免增加browser history,测试发现在ios上能行(typeof window.frames['ifrmId'].location == 'object'),在Android上直接导致无法切换视频(typeof window.frames['ifrmId'].location == 'string')。

换一种方法:因为只要是先加载iframe节点,然后再改变src就会增加histroy,为避免这种现象就改成先设置好src再append iframe节点,切换时先remove iframe节点,设置好src再append iframe节点。

原文地址:https://www.cnblogs.com/yigeqi/p/5764325.html