2009-11-13 3 views
0

Почему я не могу получить доступ к встроенным элементам приложения?jQuery: Facebook iframe app html inaccessible

Оглядываясь на HTML, приложение помещается внутри div, но когда я пытаюсь найти содержимое div, например.

$("input").get() 

Я вижу только элемент ввода FB, а не приложение. Я ввел jQuery после загрузки страницы с помощью плагина FireQuery.

Как HTML может выглядеть нормально, но не может быть пройден с помощью jQuery?

+1

security, u can not if iframe src находится в другом домене – redsquare

+0

Но я думал, что если он отображается как HTML div, вы можете получить к нему доступ с помощью javascript, как он отображается? – syaz

ответ

0

Ваше приложение - приложение iframe справа?

Что произойдет, если вы загрузите jquery, как правило, в свой html для вашего iframe? Это должно работать для доступа к элементам DOM в вашем iframe ... оно работает для моих приложений iframe Facebook.

Я не играл с FireQuery, но, похоже, он динамически вводит jquery для экспериментирования/отладки. Я предполагаю, что вы каким-то образом загрузили его в домен Facebook, а не в ваш iframe.

0

Вам необходимо использовать команду CD консоли Firebug.
http://getfirebug.com/wiki/index.php/Command_Line_API#cd.28window.29

Это изменит контекст командной строки на ту строку, которую вы даете в качестве ссылки на функцию cd.

Что-то, как это будет делать: cd(frames["idOfIFrame"])

Оттуда, вы можете сделать свой обычный материал командной строки, как и на обычном сайте.

+0

Кроме того, вы должны отметить, что FB IFrame - это просто IFrame. Это не отображается в div! Он «отображается» в IFrame, посредством FB POST'ing формы в IFrame с использованием javascript. Это также то, как данные signed_request от FB попадают в ваше приложение IFrame через POST. –

Смежные вопросы