Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.07.2013, 17:39   #1
igrok111
Форумчанин
 
Регистрация: 12.07.2012
Сообщений: 140
По умолчанию Можно ли передать переменную в iframe. в src=

Код:
<script> 
var ssylka; 
ssylka = 'http://moysayt.com'; 
</script>
теперь надо, что б строка из ssylka загрузилась в iframe, короче в src надо вставить.
Код:
<iframe src="?????" frameborder="200" border="200" width="100%" height="100%"></iframe>
не получается ни как(я новичек) src=ssylka 'src=ssylka' "src=ssylka" - это все ошибки

upd:
я кажется понял, это от того, что ssylka - локальная переменная типо?

Последний раз редактировалось igrok111; 01.07.2013 в 17:43.
igrok111 вне форума Ответить с цитированием
Старый 02.07.2013, 10:05   #2
Naive
Раздолбайских Дел
Старожил
 
Аватар для Naive
 
Регистрация: 22.05.2009
Сообщений: 3,828
По умолчанию

ssylka - это переменная JS типо, хоть и глобальная, в html ее не будет. Это первое.
Второе, манипулировать с src iframe не позволит политика безопасности браузера. По крайней мере фаерфокс ругается и грозит пальцем.
Третье, именно переменные в айфрейм (т.е. другую физически страницу передаются не через атрибуты html, а через dom-структуру)
Код:
document.getElementsByTagName('iframe')[0].contentWindow.variable = 123;
примерно так, если домены вызывающего окна и фрейма совпадают (иначе фэйл безопасности)

Что собственно сделать то нужно? наверняка имеется способ не-через-жопу
Alar, верни репу!
Naive вне форума Ответить с цитированием
Старый 02.07.2013, 15:51   #3
igrok111
Форумчанин
 
Регистрация: 12.07.2012
Сообщений: 140
По умолчанию

Цитата:
Сообщение от Naive Посмотреть сообщение
ssylka - это переменная JS типо, хоть и глобальная, в html ее не будет. Это первое.
Второе, манипулировать с src iframe не позволит политика безопасности браузера. По крайней мере фаерфокс ругается и грозит пальцем.
Третье, именно переменные в айфрейм (т.е. другую физически страницу передаются не через атрибуты html, а через dom-структуру)
Код:
document.getElementsByTagName('iframe')[0].contentWindow.variable = 123;
примерно так, если домены вызывающего окна и фрейма совпадают (иначе фэйл безопасности)

Что собственно сделать то нужно? наверняка имеется способ не-через-жопу
мне надо на сайте сделать форму, в которой вводить url сайта и кнопку, по нажатию в небольшом окне(фрейм) должен открытся этот url. - иными словами - будет динамически создаватся фрейм. Домены разные, но на тех сайтах я же разрешаю вставлять их в фрейме(любой сайт может запретить), тогда при чем тут политика безопасности?
igrok111 вне форума Ответить с цитированием
Старый 02.07.2013, 17:03   #4
Naive
Раздолбайских Дел
Старожил
 
Аватар для Naive
 
Регистрация: 22.05.2009
Сообщений: 3,828
По умолчанию

Цитата:
тогда при чем тут политика безопасности?
Вот при этом:
Код:
var q = 'http://google.com'; // создаем переменную
document.getElementById('post_message_1250150'). // твой пост на этой странице
  innerHTML = '<iframe src="'+q+'"></iframe>'; // пытаемся создать фрейм
// результат немного предсказуем:
// Refused to display 'https://www.google.ru/' in a frame because it set 'X-Frame-Options' to 'SAMEORIGIN'.
Православно-верный вариант работы с дом, через создание элемента и указание ему атрибутов тоже — фейл, это еще на работе пробовал в ФФ.
Есть небольшая надежда, что будет работать со скриптом, запущенным изнутри страницы, а не из консоли.
UPD: не, не работает даже если сразу вписать адрес http://loctev.pro/iframe_test/
так что пых тоже не поможет
Alar, верни репу!
Naive вне форума Ответить с цитированием
Старый 02.07.2013, 18:20   #5
igrok111
Форумчанин
 
Регистрация: 12.07.2012
Сообщений: 140
По умолчанию

Цитата:
Сообщение от Naive Посмотреть сообщение
Вот при этом:
Код:
var q = 'http://google.com'; // создаем переменную
document.getElementById('post_message_1250150'). // твой пост на этой странице
  innerHTML = '<iframe src="'+q+'"></iframe>'; // пытаемся создать фрейм
// результат немного предсказуем:
// Refused to display 'https://www.google.ru/' in a frame because it set 'X-Frame-Options' to 'SAMEORIGIN'.
Православно-верный вариант работы с дом, через создание элемента и указание ему атрибутов тоже — фейл, это еще на работе пробовал в ФФ.
Есть небольшая надежда, что будет работать со скриптом, запущенным изнутри страницы, а не из консоли.
UPD: не, не работает даже если сразу вписать адрес http://loctev.pro/iframe_test/
так что пых тоже не поможет
конкретно гугл, как и другие крупные сайты, запрещает вставлять себя во фрейм - по этому и ошибка. Я на своих сайтах разрешаю.
Цитата:
Веб-сайт не позволяет отображать своё содержимое во фрейме. Оно должно отображаться в отдельном окне.
или вы не то имеете ввиду?

Последний раз редактировалось igrok111; 02.07.2013 в 18:24.
igrok111 вне форума Ответить с цитированием
Старый 03.07.2013, 07:50   #6
Naive
Раздолбайских Дел
Старожил
 
Аватар для Naive
 
Регистрация: 22.05.2009
Сообщений: 3,828
По умолчанию

Цитата:
Сообщение от igrok111 Посмотреть сообщение
конкретно гугл, как и другие крупные сайты, запрещает вставлять себя во фрейм - по этому и ошибка. Я на своих сайтах разрешаю.
Хм... как-то я не задумывался об этом даже, ибо фреймы не использую как правило. Попробуйте с теми вариантами что я написал со своими сайтами, может получится)
UPD:
мда, работает...
Код:
var q = document.createElement('iframe');
q.src = ssylka;
document.body.appendChild(q);
проверил со своим сайтом
Alar, верни репу!
Naive вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Можно ли как-нибудь передать значение из HTTP Request в переменную? n1cklan JavaScript, Ajax 1 08.10.2012 02:57
Как переприсвоить значение src тега iframe при клике на ссылку ? platinum355 JavaScript, Ajax 1 28.06.2011 16:42
Как переприсвоить значение src тега iframe при клике на ссылку ? platinum355 HTML и CSS 2 27.06.2011 21:03
Как изменить src в iframe ? vital4u4ok HTML и CSS 3 25.10.2010 16:07
Как можно передать переменную типа struct в качестве входных параметров функции kitty19 Помощь студентам 1 15.12.2009 17:43