Tag: iframe

如何从iframe中使用javascript获取iframe的高度? 那些包含多个iframe的网页呢?

有没有办法通过从iframe内部执行脚本来检测iframe的高度和宽度? 我需要根据iframe的不同高度/宽度动态定位iframe中的一些元素。 如果同一页面中有多个iframe会有什么区别吗? 即每个iframe想要找到自己的尺寸。 欢迎使用Javascript或jquery解决方案。 谢谢! iframe必须嵌入到其他网站上,正如下面的答案之一所述,我遇到了权限问题。

jQuery添加带有内容的iFrame

我有这样的问题。 我需要在fancybox中打开iframe(我需要iframe,因为我需要浏览已打开文档中的链接并保留在fancybox中),但我想将内容放入iframe变量中,而不是通过src属性(我已经有了内容)通过AJAX(在将内容放到iframe之前我需要对内容进行一些检查,所以没有办法做它而不是AJAX查询),所以我不再需要一个查询)。 Fancybox不允许将’content’属性与’type’一起使用:’iframe’。 所以我决定动态创建iframe,将我的内容插入其中,并将fancybox的iframe显示为常规块。 就像是 jQuery(”).appendTo(‘body’).contents().find(‘body’).append(content); 然后 jQuery(”).fancybox(); 但第一部分不起作用。 我可以看到添加到页面但没有任何内容的iframe(我在可变内容中有完整的html页面,但是当我尝试追加一些文本时它也不起作用)。 我做错了什么? 也许有另一种方法可以做我需要的东西? 感谢您的意见!

PHP文件通过jQuery AJAX使用POST数据下载

所以我知道有很多类似的post,但我认为这足以保证自己的问题: 我正在用PHP和jQuery构建一个XLS导出器。 我试图用jQuery发布一个数组(我相信它会像GET查询字符串一样长),并使用它在我的服务器上生成一个XLS文件,然后用户可以下载。 我过去曾使用隐藏的iframe来完成此任务,但由于它们只是重定向到一个url,这需要我使用GET,这让我很紧张。 我的问题是:如果这些文件是由多个用户动态生成的,那么如何将这些文件存储在我的服务器上并链接到它们? 隐藏的iframe是否会链接到单独的PHP脚本,该脚本根据会话ID或类似内容定位THEIR文件? 在此先感谢任何有关我一直被问到的问题的指导:)

将值从fancybox iframe传递给parent

我试图将fancybox iframe中的变量/值传递给父窗口但没有成功。 Fancybox是通过链接启动的 class=”fancybox fancybox.iframe” 我在fancybox.iframe中的代码是: $(document).ready(function(){ $(‘.insert_single’).click(function(){ var test = $(‘.members_body’).find(‘{row.U_USERNAME}’); setTimeout(function(){ parent.$.fancybox.close();},300);return true; }); }); 其中“{row.U_USERNAME}”是在iframe中查找的用户名。 然后,在父级中有以下代码: $(document).ready(function(){ $(‘.fancybox’).fancybox( { openEffect:’fade’, openSpeed:500, afterClose: function(){ alert($(“.fancybox-iframe”).contents().find(test)); $(‘#form input[name=username]’).val()(test);return false; } } ); }); 但是当fancybox关闭时,没有警告显示变量“test”,变量也不会在表单的输入字段中显示为值或文本。 我已经阅读并尝试了在stackoverflow上找到的各种解决方案但没有成功。 在此先感谢您的帮助 编辑 这是一个例子

在IE中未触发iFrame的加载事件

为什么在iFrames的IE中没有触发load事件? 请看一下这个例子 。 在FF和Chrome中完美按预期工作,但IE失败了。

jquery – IE浏览器在某些页面上拒绝iframe访问

我是printThis的作者,这是一个用于打印的jquery插件。 https://github.com/jasonday/printThis 我有一个用户提出了一个问题,我一直无法破解,不幸的是,我无法分享页面(隐私问题)。 在用户的网站上,问题出现在IE中的某些页面上,而不是其他页面上。 打印失败,因为iframe仍然是空的。 IE中的错误在jQuery中: contents: function (a) { return f.nodeName(a, “iframe”) ? a.contentDocument || a.contentWindow.document : f.makeArray(a.childNodes) } 使用日志记录,我能够确定它在这条线路上失败了: var $doc = $(“#” + strFrameName).contents(); 但同样,这只发生在某些页面上,而且我无法在该用户网站之外的任何实例中重新创建。 我的问题:这里有更好的方法吗? 或者使$doc对象更具防弹性的方法? // ———————————————————————– // printThis v1.1 // Printing plug-in for jQuery // // Resources (based on) : // jPrintArea: http://plugins.jquery.com/project/jPrintArea // jqPrint: https://github.com/permanenttourist/jquery.jqprint // Ben Nadal: […]

使用chrome扩展在iframe中注入javascript

关于将javascript注入文档页面有很多问题/答案。 我真正想要做的是在文档中的iframe中注入javascript。 要明确的是,iframe不属于与文档相同的域。 我已经通过控制台尝试了它(不是通过扩展)但是无法这样做。 我很好奇这是否可以使用chrome扩展来完成?

Javascript中的iframe和内存管理

我有链接将页面加载到iframe中。 我一直在使用谷歌Chrome的内存堆分析器监视内存中数据的累积,我注意到内存中有一些泄漏。 我加载了页面并拍摄了第一张快照,最多加起来为2.69 MB 。 我点击了将页面打开到iframe的链接,并拍了另一张快照,总共给了我14.58 MB 。 我使用以下jquery代码段删除了iframe: $(‘#myframe’).unbind(); $(‘#myframe’).remove(); /* * By the way, I also tried $(‘#myframe > *’) as a selector. * It still didn’t work. Even if it would, it doesn’t look like a viable solution to me. * It looks too resource intensive. * * I forgot to mention […]

Uncaught SecurityError:无法从’HTMLIFrameElement’读取’contentDocument’属性

我正在尝试制作我自己的“网站检查器”以满足特定需求,我在访问iFrame时遇到问题。 Uncaught SecurityError:无法从’HTMLIFrameElement’读取’contentDocument’属性:阻止具有原点“http:// checker.xcore.co.il”的框架访问具有原点的框架“http:// xcore.co.il ”。 请求访问权限的框架将“document.domain”设置为“checker.xcore.co.il”,但正在访问的框架没有。 两者都必须将“document.domain”设置为相同的值才能允许访问。 我必须使用iFrame这样做,因为我需要访问类CSS。 单击此链接 ,加载网站,然后单击右侧的“fontSizeErrors”,然后您可以在控制台日志中看到错误。 我怎么能通过这个? 我在Google上找不到任何有用的东西.. 谢谢!

使用jQuery获取iframe的html内容

我正在尝试定制OpenCms(基于java的开源CMS),它使用嵌入式FCKEditor,这是我正在尝试使用js / jQuery访问。 我尝试获取iframe的html内容,但是,总是将null作为返回值。 这就是我尝试从iframe中获取html内容的方法: var editFrame = document.getElementById(‘ta_OpenCmsHtml.LargeNews_1_.Teaser_1_.0___Frame’); alert( $(editFrame).attr(‘id’) ); // returns the correct id alert( $(editFrame).contents().html() ); // returns null (!!) 查看屏幕截图,我想要访问的是“LargeNews1 / Teaser”html部分,该部分目前包含值“Newsline en …”。 下面你还可以看到Firebug中的html结构。 但是, $(editFrame).contents().html()返回null,我无法找出原因,而$(editFrame).attr(‘id’)返回正确的id。 iframe内容/ FCKEditor位于同一站点/域上,没有跨站点问题。 iframe的Html代码位于http://pastebin.com/hPuM7VUz 更新: 这是一个有效的解决方案: var editArea = document.getElementById(‘ta_OpenCmsHtml.LargeNews_1_.Teaser_1_.0___Frame’).contentWindow.document.getElementById(‘xEditingArea’); $(editArea).find(‘iframe:first’).contents().find(‘html:first’).find(‘body:first’).html(‘some new value’);