小编典典

jQuery fancybox,iframe或ajax,使用url加载

ajax

使用fancybox(v2),如何创建一个唯一的URL,该URL在加载时显示带有iframe内容的fancybox。我可以很好地处理内联内容(例如,www.mysite.com
/
index.html#idgoeshere),但不知道为了加载fancybox以及其中的特定iframe,URL或js应该包含什么内容或ajax.txt页面。

我想要达到的目标是通过转到以下链接:

www.mysite.com/index.html#iframe.html

加载索引页面,打开fancybox窗口,并将iframe.html页面加载到fancybox窗口中(或者也可以是通过ajax加载的.txt文件)。

的HTML

<a class="fancybox fancybox.iframe" href="iframe.html">Iframe</a>

花式盒子

<script>
$(document).ready(function($) { 
    $.fancybox({
    content: $(window.location.hash).html()
});
    $('.fancybox').fancybox();
});
</script>

感谢您的帮助或指导。

凯尔

更新资料

谢谢大家的帮助!这就是最终对我有用的东西。我将内容保存到单独的html文件中,然后使用fancybox.iframe对其进行了调用

JS:

<script>
$(document).ready(function () {
    $('.fancybox').fancybox({
     'scrolling'   : 'no'   
    });
    if (window.location.hash !== "") {
        $(window.location.hash).click();
    }
});
</script>

阅读 331

收藏
2020-07-26

共1个答案

小编典典

看一下Fancybox网站上的示例Fancybox操作完全基于链接的href。因此,如果您加载该页面,然后iframe.html在调用.fancybox它之前更新页面上的链接的href以指向该链接,则它应该可以正常工作。警告:未经测试的代码浮出水面……

$(document).ready(function(){ 
    $('#target').attr('href', window.location.hash.substring(1)).fancybox();
});

需要子字符串调用才能#从中返回的哈希字符串中删除window.location.hash

希望这可以帮助

2020-07-26