问题标签 [iframe]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
iframe - Googlebot + IFrames?
googlebot 如何处理 iframe?它是否像链接一样遵循 src 属性?是否将 iframe 内容作为包含它的页面的一部分进行分析?
javascript - 访问 iframe 文档对象时出现“访问被拒绝”错误
为了在具有许多参数的表单中发布 AJAX 表单,我使用了一种解决方案,即创建一个iframe
,通过 POST 将表单发布到它,然后访问iframe
的内容。具体来说,我正在访问这样的内容:
我测试了它并且它有效。
在某些页面上,我开始收到“访问被拒绝”错误。据我所知,如果 iframe 来自同一个域,则不应该发生这种情况。
我很确定它以前工作过。有人有线索吗?
如果我不够清楚:我发布到同一个域。所以这不是跨域请求。我只在 IE 上测试。
PS 我不能使用简单的 ajax POST 查询(不要问...)
javascript - 在 iframe 中运行 Google Analytics?
我们公司运行一个网站 (oursite.com) 与向我们发送流量的附属合作伙伴。在某些情况下,我们使用自己的子域 (affiliate.oursite.com) 设置我们的关联公司,并且他们使用 iframe 在其网站 (affiliate.com) 上显示我们网站的选定内容。
他们网站上的页面示例:
我们希望对affiliate.oursite.com 进行谷歌分析跟踪。目前,当从 iframe 加载页面时,Google 似乎没有收到任何来自会员的数据。
现在,存在安全隐患,因为 Javascript 不喜欢访问有关不同域中页面的信息,而 IE 不喜欢为不同域设置 cookie。
有人对此有解决方案吗?我们是否需要将affiliate.oursite.com 命名为 cname.oursite.com,还是有更清洁的解决方案?
javascript - 根据内容调整 iframe 的大小
我正在开发一个类似 iGoogle 的应用程序。来自其他应用程序(在其他域上)的内容使用 iframe 显示。
如何调整 iframe 的大小以适应 iframe 内容的高度?
我试图破译谷歌使用的 javascript,但它被混淆了,到目前为止搜索网络没有结果。
更新:请注意,内容是从其他域加载的,因此适用同源策略。
html - 使用 HTML 框架进行模板有哪些潜在的陷阱?
我们也可以包含 IFrame。
javascript - IFRAME 完成加载时的 Javascript 回调?
当 IFRAME 完成加载时,我需要执行回调。我无法控制 IFRAME 中的内容,因此无法从那里触发回调。
这个 IFRAME 是以编程方式创建的,我需要在回调中将其数据作为变量传递,以及销毁 iframe。
有任何想法吗?
编辑:
这是我现在拥有的:
此回调在 iFrame 加载之前进行,因此回调没有返回数据。
asp.net - 如何从 ASP.NET 中的代码隐藏文件访问 IFRAME?
我正在尝试从代码隐藏 aspx.cs 文件中为 IFRAME html 控件设置属性。
我看到一篇文章说您可以使用 FindControl 来查找非 asp 控件,方法是:
aspx 文件包含:
然后代码隐藏文件包含:
除了没有找到控件,contentPanel1 为空。
更新 1
查看呈现的 html:
我尝试将代码隐藏更改为:
但这没有帮助。
我正在使用 MasterPage。
更新 2
将 aspx 文件更改为:
也没有帮助
回答
答案是显而易见的,甚至不值得问最初的问题。如果您有 aspx 代码:
并想从代码隐藏文件中访问 iframe,您只需访问它:
post - 你如何发布到 iframe?
如何将数据发布到 iframe?
cookies - 如何在 Safari 中的 iframe 内设置来自外部域的 cookie?
来自 Apple开发人员常见问题解答
Safari 附带了一个保守的 cookie 策略,该策略将 cookie 写入仅限于用户选择(“导航到”)的页面。
默认情况下,Safari 仅允许来自您直接导航到的站点的 cookie。(即,如果您单击带有该域名 url 的链接)。
这意味着,如果您使用 iFrame 从您自己的站点加载一个页面,该页面来自另一个站点的页面,则另一个站点无法设置 cookie。(例如,售票处)。一旦您直接访问了其他域,其他站点就能够访问和更改其自己的 cookie。
如果无法访问其他站点上的代码,我如何才能使用户体验尽可能不显眼?
是否有(javascript?)方法来检查是否已设置其他站点的 cookie,并相应地,如果需要,首先显示指向其他站点的直接链接?
更新:
HTML5 功能“window.postmessage”似乎是一个不错的解决方案。
有一些 jQuery 库可能会有所帮助,并且与最新的浏览器兼容。
本质上,iFrame 文档使用 Json 通过 window 元素发送消息。
非常好的Postmessage-plugin,由 daepark 提供,我开始工作了。
和另一个jQuery postMessage,我发现了 Ben Alman,但尚未测试。
javascript - 有没有办法将 IFRAME 中的内容溢出到父框架上?
我有一个 UI 小部件,出于性能原因需要将其放入 IFRAME 中,因此我们可以轻松地将其联合到附属网站。小部件的 UI 包括显示在其他页面内容顶部的工具提示。请参阅下面的屏幕截图或访问该站点以查看它的运行情况。有没有办法让 IFRAME 中的内容与父框架的内容重叠?