使用Jquery的模态PDF IFRAME

所以这是我的脚本,完美的工作,没有问题。 现在为什么我在这里发布这个,大多数情况下我可以增强它并使它更好也我想这可以来帮助别人! JQUERY! 这是一个工作样本http://jsfiddle.net/cornelas/4eUgf/2/

$(document).ready(function() { $('.select').click(function () { $('.pdf_grey').fadeIn('slow'); $('.select').hide(); $('.deselect').show(); }); $('.deselect').click(function() { $('.pdf_grey').fadeOut('slow'); $('.select').show(); $('.deselect').hide(); }); $('.pdf_grey').css({'opacity' : 0.8}); }); $(document).mouseup(function (e) { var container = $(".pdf_grey"); var deselect = $(".deselect"); var select = $(".select"); if (container.has(e.target).length === 0) { container.hide(); deselect.hide(); select.show(); } }); 

这是我的HTML

现场手册

PreviewMinimize | 下载

 

Close


最后是CSS

 .pdf_grey { position: absolute; left: 500px; top: 100px; display: none; padding: 25px; background: #333; } .deselect { display: none; cursor: pointer; } .select { cursor: pointer; color: #666; } .select:hover { color: red; } 

如果您注意到我编写了此脚本,它将专门定位类PDF灰色并且它将显示设置为隐藏的类,则div包含加载PDF的Iframe。 我认为这是一个非常简单的方式来加载PDF而不更改页面。 现在..百万dolla问题,我怎么做到这一点,如果有任何类的pdf它将加载它隐藏的内容。 我不想在设置课程时发疯,你可以看到。 我想在ahref或我们必须设置一个加载Iframe的类。 谢谢大家的帮助,我会发布我的脚本,当它与任何帮助命名的人完成时,我看到的所有模态都是蹩脚的,而不是那么敏感。

您需要查看提供源URL的.load函数。 您需要做的就是找出一种方法将源保存为变量并将其修补到加载函数中。 如果你点击缩略图然后:那么每当点击.pdf时,首先保存src:var src = $(this).parent(’a’)。attr(’src’); 然后你可以使用.load并使用src变量来定位iframe。 在查看.load的API文档时,它应该变得非常清楚。 关于将ifs加载到iframe中的一些事项:iframe用于外部html文档,而object标签用于外部文件,如flash,PDF,video等。您可能希望查看object标记。

iframe很难设置任何error handling,因此如果您的PDF没有加载,显示错误可能非常困难。 有一些解决方法,但我没有看到它们是好的,他们主要依靠设置计时器来查看iframe是否已加载,并且一些sites / pdf可能需要很长时间才能加载导致错误。

由于浏览器需要插件,Pdfs很难处理。 那些没有安装PDF阅读器的用户呢,在这种情况下再也无法进行错误检查。

请参阅此处的示例http://jsfiddle.net/cornelas/4eUgf/4/ Iframe现在基于链接而不是显示加载页面的iframe的链接!

  $(document).ready(function() { $("a.select").live('click', function (e) { e.preventDefault(); var href = this.href; $("#manual").attr("src", href); }); $('.full').css({'opacity' : .7}); $('.select').click(function () { $('.pdf_grey').fadeIn('slow'); $('.full').fadeIn('slow'); $('.select').hide(); $('.deselect').show(); }); $('.deselect').click(function() { $('.pdf_grey').fadeOut('slow'); $('.full').fadeOut('slow'); $('.select').show(); $('.deselect').hide(); }); }); $(document).mouseup(function (e) { var container = $(".pdf_grey"); var bkg = $(".full"); var deselect = $(".deselect"); var select = $(".select"); if (container.has(e.target).length === 0) { container.hide(); deselect.hide(); select.show(); bkg.hide(); } }); 

Close


body { padding:0px; margin: 0px; } .full { background: #000; width: 100%; height: 100%; position: absolute; z-index: 5; display: none; } .red { background: red; width: 10%; height: 25%; } .pdf_grey { position: absolute; left: 25%; top: 15%; display: none; padding: 25px; background: #333; } .deselect { display: none; cursor: pointer; } .select { cursor: pointer; color: #666; } .select:hover { color: red; }
Interesting Posts