Допустим, у меня есть страница в том же домене , которую я поместил в iframe. В iframe я добавил данные в элемент, что-то вроде этого:
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
, но я не знаю, как получить к нему доступ извне этого документа. Я настроил эту демонстрацию , чтобы отобразить мою проблему. Нажмите кнопку «Получить данные кадра», чтобы увидеть результаты.
Буду признателен за любую информацию:)