假设我有一个页面在同一域名下,我将它放在一个iframe中。在iframe中,我向元素添加了数据,类似于这样:
现在,一旦这个页面嵌套在iframe中,我知道可以按照以下方式访问元素:
我知道jQuery内部将
我将不胜感激您的任何输入 :)
HTML
<div id="data"></div>
脚本
$('#data')
.data('test1', 'this is test data 1')
.data('test2', ['John', 'Smith'])
.data('test3', {
alert1: function() {
$('#data').append('test3: successful<br>');
}
})
现在,一旦这个页面嵌套在iframe中,我知道可以按照以下方式访问元素:
$('#frame').contents().find('#data');
但是当我尝试从该元素获取数据时,它总是未定义。
$('#frame').contents().find('#data').data('test1'); // shows up as undefined
我知道jQuery内部将
data()
存储在一个cache
对象中,但我不知道如何从文档外部访问它。我设置了这个演示来展示我的问题。点击"Get Frame Data"按钮以查看结果。我将不胜感激您的任何输入 :)