哞.无法在 iframe 中获取 DOM 元素
mootools. Can't get DOM elements within iframe
我有一个基于SocialEngine 4的网站,它使用moo-tools-1.2.5。有一个带有一些 js 的 iframe,它会在弹出窗口中打开(带有内置的 Smoothbox 插件)。而且我无法仅通过调用 $$() 从 JS 获取这个 iframe 的 DOM 元素,我需要使用这样的 kludge:
var context = (window.frames[0]) ? window.frames[0] : window;
context.$('user_email').set('value', context.$('1_1_30').get('value'));
这很奇怪,我想这是意外的行为,因为标准 SocialEngine 模块中的 JS 在 iframe 中也不起作用。
这是因为在 1.2.5 中,$$
是 this.document.getElements
的别名。
我建议你使用mootools-core的IFrame包装器类,它可以扩展iframe,这样它们就会变得mootoolsy,然后你可以做这样的事情:
var context = this.document, // window
iframe = document.getElement("iframe")
// if iframe found, change context to its contentDocument
iframe && (context = new IFrame("foo").contentDocument)
// wrapper.
!function() {
console.log(this.getElements("div"))
}.call(context)
相关文章:
- Ember.js-获取DOM元素的模型数据
- 如何获取dom元素的代码行号
- 如何使用d3.jsj或jquery获取DOM
- 如何获取dom修改的选择框的当前所选选项
- 获取DOM中属性名称以某个字符串开头的所有HTML元素
- 在插入符号位置获取DOM元素
- 使用 jQuery 获取 DOM 元素的 XPath
- 获取DOM元素的性能差异
- 在 GWT 中按属性获取 DOM 元素
- Chrome扩展程序获取DOM文本并在弹出窗口中显示.html然后单击按钮
- jQuery:在具有相同类的对象列表中获取 DOM 中的对象编号
- 是否可以从外部样式表中获取 dom 元素的特定 css 属性的值,而不是从计算的样式表中获取
- 获取 DOM 中的拉斐尔 id 属性
- 如何获取 dom 元素的当前 html
- 如何在 YUI 事件处理程序中获取 DOM 节点
- 如何在javascript中获取DOM元素内容的二进制表示
- 使用 JavaScript 从 AJAX 响应中获取 DOM 元素
- 从字符串中获取 DOM
- 如何在电子应用程序中从浏览器窗口获取DOM树
- 哞.无法在 iframe 中获取 DOM 元素