Javascript 通过fancybox在iframe中定位标记
我使用fancybox打开一个iframe并滚动到一个锚定标记,但除了IE之外,它工作得非常好,所有其他浏览器都不一致,停在一个不同的地方,而不是锚定 根据我在这里读到的内容,我认为JavaScript可能存在问题,但我不知道如何修复代码 以下是链接:Javascript 通过fancybox在iframe中定位标记,javascript,iframe,tags,fancybox,anchor,Javascript,Iframe,Tags,Fancybox,Anchor,我使用fancybox打开一个iframe并滚动到一个锚定标记,但除了IE之外,它工作得非常好,所有其他浏览器都不一致,停在一个不同的地方,而不是锚定 根据我在这里读到的内容,我认为JavaScript可能存在问题,但我不知道如何修复代码 以下是链接: 主持人: 杯蛋糕制作派对0.00英镑 谢谢你的帮助 谢谢 注:在IE中,一切正常,在Chrome和Firefox中,我有12个链接,8个完美,在Safari 6中正常,在Opera中没有一个正常。在Fancybox中,锚在浏览器和其他浏览器上不
主持人:
杯蛋糕制作派对
0.00英镑
谢谢你的帮助
谢谢
注:在IE中,一切正常,在Chrome和Firefox中,我有12个链接,8个完美,在Safari 6中正常,在Opera中没有一个正常。在Fancybox中,锚在浏览器和其他浏览器上不起作用。如果你想用锚打开一个iframe,你不能直接使用,但是可以用javascript来完成。至少它对我有用(在Prestashop中使用)
我的链接:
<a href="http://mylink.com/blabla/#myanchor" class="iframe-pv">Mi linkable text</a>
我希望它能有所帮助:)你试过了吗?
$(document).on('click', 'a.iframe-pv', function(e){
e.preventDefault();
var anchor = '';
var url = $(this).attr('href');
var anchorIdx = url.indexOf('#');
if (anchorIdx > -1) {
anchor = url.substring(anchorIdx, url.length);
url = url.substring(0, anchorIdx);
}
if(url.indexOf('content_only=') == -1) {
url += (url.indexOf('?') > -1) ? '&' : '?';
url += 'content_only=1';
}
if (!!$.prototype.fancybox){
$.fancybox({
'padding': 20,
'width': '70%',
'height': '70%',
'type': 'iframe',
'href': url + anchor
});
}
});