javascript - 在 featherlight.js 中延迟加载 iFrame

标签 javascript jquery html iframe featherlight.js

我想知道是否有一种方法可以在运行时在 featherlight.js 中延迟加载 iFrame,而不是在 html 中声明 iFrame?这样,可以通过数据属性或 href 属性简单地指定要在页面中加载的 url,而不是让它成为 iFrame 声明。例如,不要像这样在我的 html 文件中声明 iFrame:

<a class="btn btn-default" href="#" data-featherlight="#fl3">iFrame</a>
 ....
<iframe class="lightbox" src="www.google.com" id="fl3" style="border:none;" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen="" height="281" width="500"></iframe>

我想做这样的事情:

<a href="#" data-featherlight="www.xyz.com"></a>

我确实意识到,如果将上面的 URL 替换为以 .html 结尾的内容,它就可以正常工作。我正在考虑为“外部”站点/contant 编写另一个内容过滤器.. 如下所示:

external: { 
            regex: /[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/,
            process: function(url) {

                var self = this,

                var $container = $("<iframe id='featherlight-iframe'/>");
                $container.attr('src', url);
                    ........


            }

        },

但不确定这是否是正确的方法。任何帮助将不胜感激。

提前谢谢你。

最佳答案

添加内容过滤器是一个很好的方法。

事实证明,正确地做起来比应该做的要难一些(至少,如果想避免两次加载内容),所以我添加了 feature in Featherlight v1.2 .

关于javascript - 在 featherlight.js 中延迟加载 iFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28571216/

相关文章:

javascript - 在 javascript 的 2 个函数中使用相同的变量

javascript - 将图像上传到 Cloudinary Express.js React Axios post 请求

javascript - 如何检测jquery中单选按钮的选中状态?

javascript - 如何使用 JavaScript 提交表单?

javascript - 无法在弹出窗口中打开 Firebug

javascript - 获取html中从一个页面到另一个页面的一篇文章的id

php - 停止缓存页面的特定元素

html - 为什么我在使用 Bootstrap 时会出现红线

html - 如何修复我的导航菜单栏

html - HTML 编码字符的奇怪间距?