问题标签 [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.
javascript - jQuery/JavaScript:访问 iframe 的内容
我想使用 jQuery 在 iframe 中操作 HTML。
我想我可以通过将 jQuery 函数的上下文设置为 iframe 的文档来做到这一点,例如:
但是,这似乎不起作用。一些检查表明,除非我等待 iframe 加载,否则其中的变量frames['nameOfMyIframe']
是。undefined
但是,当 iframe 加载时,变量不可访问(我得到permission denied
-type 错误)。
有谁知道解决这个问题的方法?
javascript - 从 iframe 访问 id
在这里,我构建了一个带有iFrame
. 我在iFrame
src 页面中有一个 id。是否可以通过 JavaScript 从我当前的页面访问 id。
请帮我。
sharepoint - 从内容编辑器/页面查看器 Webpart 中删除滚动条
我正在尝试在另一个 SharePoint webpart 页面中显示 HTML 页面。
我使用了开箱即用的页面查看器 Web 部件,但页面查看器 Web 部件在其中显示了一个禁用的滚动条。
我还尝试使用其中带有 IFRAME 标记的内容编辑器 Web 部件,但它仍然无法正常工作。
这是我在内容编辑器 webpart 中使用的代码。
javascript - 将焦点设置为 iframe 内容
我有一个带有document.onkeydown
事件处理程序的页面,我将它加载到另一个页面的 iframe 中。我必须在 iframe 内单击才能让内容页面开始“收听”。
有什么方法可以在外部页面中使用 JavaScript 将焦点设置到内部页面,这样我就不必在 iframe 内单击?
编辑:回复评论:
上下文是主窗口是一个类似灯箱的系统,除了不是图片,它显示 iframe,每个 iframe 都是一个带有 keydown/mousemove 处理程序的交互式页面。直到我在显示灯箱后单击 iframe 后,这些处理程序才会触发。
我实际上并不是在寻找传统意义上的“setFocus”,而是“在 iframe contentDocument 上启用事件处理程序”
iframe - iFrame 导致 IE7 中的脚本拖拽问题(包括完整代码)?
当我在 IE7 中的 iframe 上拖动可拖动 div 内的链接时,我得到了非常奇怪的结果。试试下面的代码,如果你对如何解决这个问题有任何建议,请告诉我。
javascript - 如何防止 IFRAME 重定向顶级窗口
一些网站有代码来“突破”IFRAME
外壳,这意味着如果页面作为父页面内部A
加载,则某些 Javascript会将外部窗口重定向到.IFRAME
P
A
A
通常这个 Javascript 看起来像这样:
我的问题是:作为父页面P
的作者而不是内页的作者,我该A
如何防止A
这种突破?
PS 在我看来,这应该是跨站点安全违规,但事实并非如此。
javascript - 使用 javascript 将整个文档复制到 iframe
听起来很奇怪,但这就是我试图用 javascript 做的事情(这都是由事件处理程序触发的):
- 将页面的内容(最好是整个文档或至少 documentElement 对象)保存到变量中。
- 创建一个 iframe 并将其插入正文。
- 将 iframe 的文档替换为保存的文档(这样 iframe 现在与外页具有相同的内容)。
- 更改外页。
除了替换 iframe 文档的部分外,一切都很花哨。我尝试了很多不同的方法,但都有问题(如下所述)。当页面位于 iframe 中时,我需要事件处理程序、样式、链接等才能正常工作。
是的,我意识到我可以将 iframe 的 src 设置为当前页面的 url,但我宁愿页面不必加载。如果我不能想出一个解决方案,这就是我要做的。
我已经尝试过的事情:
我收到一条错误消息(“设置只有 getter 的属性”)。
这似乎有效,但不会重新渲染样式,并且事件处理程序不起作用。有趣的是,链接也不起作用,甚至连浏览器的默认样式都没有。也许这是因为 DOCTYPE 没有复制到 iframe?
这与 removeChild/appendChild 方法具有相同的行为。
似乎如果我可以让浏览器重新呈现样式并重新注册事件处理程序,那么我会很高兴,但我不确定这是否可能。
javascript - iFrame / Javascript鼠标加速中的Javascript iPhone滚动效果
我正在尝试使用 JavaScript 在窗口中重新创建 iPhone 轻弹/滚动事件。
从 JQuery 开始,我正在使用计时器测量鼠标在单击 - 拖动 - 释放事件期间的加速度和偏移:
现在的问题是将加速转化为屏幕移动 - 是否有任何算法(缓动?)或动画库可以帮助我解决这个问题?(我已经查看了 JQuery 的 .animate() 但我不确定如何在拖动事件期间连续应用它!
更新 - 这里的最终解决方案:
ajax - 使用 iframe 和 ajax 包含外部页面的内容有什么区别?
我一直在阅读这方面的内容,似乎如果您使用 ajax,您只能引入位于同一域中的内容,而使用 iframe,您可以引入来自任何域的内容。是这样吗?还有哪些不同之处?
javascript - 如何将 div 放置在两个 iframe 上,其中一个 iframe 具有外部(不同域)内容?
我正在寻找一种方法将 div (它将是一个弹出窗口,由用户悬停和/或单击很像灯箱一样激活)在一个拆分 iframe 上,其中顶部 iframe 是来自我的服务器和底部 iframe 是来自另一台服务器的内容。像这样:
基本上,它看起来像一个在顶部(上部)和底部(下部;外部内容)之间水平拆分的框,以及一个悬停在两者上方的 DIV,因此顶部和底部都有重叠。
顺便说一句,我还发布了另一个问题:ajax 与 iframe 的外部内容以及在这种情况下我应该使用什么。因此,较低的(外部内容)不一定必须是 iframe,具体取决于答案。