gpt4 book ai didi

javascript - Fancybox 使用 'iframe' 设置搞乱浏览器历史记录

转载 作者:行者123 更新时间:2023-11-30 06:05:27 24 4
gpt4 key购买 nike

我正在使用带有 iframe 设置的 Fancybox 1.3.4,它在另一个页面中加载到 iframe。

$(".fancy").click(function(){
return false;
});

$(".fancy").fancybox({
type: 'iframe',
width: 800,
height: 500,
overlayOpacity: 0.8,
overlayColor: '#222',
showNavArrows: false
});

链接看起来像这样

<a id="map_link" class="fancy" href="http://example.com/page">link</a>

问题是每当我单击链接时,它都会正确加载 iframe,但也会强制父页面再次导航到自身。所以这意味着如果我打开和关闭 fancybox 10 次,我现在父页面的浏览器历史记录中还有 10 个项目。在所有浏览器中进行了测试,并且全面遇到了问题。

编辑:Test case
这几乎模仿了我在我的网站上的内容,fancybox-wise。使用 jQuery 1.5、最新的 fancybox 并在 Chrome 11 和 Firefox 3.6.14 中进行测试。当我点击该链接 5 次时,我的浏览历史记录中出现了 5 个父框架站点的实例。

最佳答案

如果您打开 unpacked source code for FancyBox , 你会发现

content.find('iframe').attr('src', isIE6 &&/^https/i.test(window.location.href || '') ? 'javascript:void(false)' : 'about:blank');

第 946 行。如果您将其注释掉,它将解决您遇到的问题。至于它的作用,看起来它与an IE 'feature'有关。 .但是,我不确定为什么有必要。

关于javascript - Fancybox 使用 'iframe' 设置搞乱浏览器历史记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5250809/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com