【发布时间】:2011-03-30 11:33:38
【问题描述】:
我正在寻找便于跨浏览器帧处理的 jquery 插件。 例如,我有以下用例:
$('#my-frame').ready(...);
$('#my-frame').scroll(...);
var x = $('#my-frame').scrollTop();
你能推荐一个帧处理的好插件吗?
【问题讨论】:
标签: javascript jquery frame
我正在寻找便于跨浏览器帧处理的 jquery 插件。 例如,我有以下用例:
$('#my-frame').ready(...);
$('#my-frame').scroll(...);
var x = $('#my-frame').scrollTop();
你能推荐一个帧处理的好插件吗?
【问题讨论】:
标签: javascript jquery frame
不知道你所说的“跨浏览器帧处理”是什么意思,但如果你想要 jQuery 或 javascript 来修改包含来自不同主机的页面的帧的内容 - 这是不可能的。
【讨论】:
$() 接受第二个参数“context”,这可能是一个节点,也可能是一个文档(例如框架内的文档)
这样你就不需要插件了。
调用可能看起来像
$('body',$('#my-frame')[0].contentDocument)
【讨论】:
$($('#my-frame')[0].contentDocument).scrollTop() 是跨浏览器吗?我问是因为 iframe contentDocument 不是跨浏览器,我们应该在 jquery 的 contents() 函数中使用 elem.contentDocument || elem.contentWindow.document。
$($('#my-frame')[0].contentDocument).scroll(function(){...}); 在 IE 中不起作用,但在 FF 中起作用。但是$($('#my-frame')[0].contentWindow).scroll(function () { ... }); 在 FF 和 IE 中工作。