Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Имитация клика по ифрейму
 
 автор: MihailGT   (01.04.2013 в 02:27)   письмо автору
 
 

В общем проблема у меня такая. Делаю автооплату через api.yandex, и кнопка "оплатить" яндексовская прогружается в ифрейм:


<iframe id="fr" frameborder="0" allowtransparency="true" scrolling="no" src="https://money.yandex.ru/embed/small.xml?uid=41001637309968&amp;button-text=01&amp;button-size=m&amp;button-color=orange&amp;targets=%D0%94%D0%BE%D1%81%D1%82%D1%83%D0%BF+%D0%BA+%D0%B1%D0%B0%D0%B7%D0%B5+%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85+%D0%BA%D0%B2%D0%B0%D1%80%D1%82%D0%B8%D1%80&amp;default-sum=600" width="180" height="40"></iframe>


Этот код я сгенерировал в api.yandex. Все работает, при нажатии на кнопку из ифрейма перенаправляет на страницу оплаты.

Дальше я решил, что кнопку нужно сделать визуально такой-же, как и другие кнопки на сайте, но проблема в том, что данная кнопка в ифрейме. Поэтому решил попытаться вставить на ее место свою кнопку, а при клике по ней имитировать клик по нулевому ифрейму.

В общем вот моя кнопка:


<img src=imgs/dalee1.png onclick="go();">


После события onclick() я пытаюсь кликнуть по нулевому ифрейму:


<html>
<head>
<script type="text/javascript" src="jq.js"></script>
<script type="text/javascript">
function go()
       {
       $('#fr').click();
       }
</script>
</head>
<body>
<iframe id="fr" frameborder="0" allowtransparency="true" scrolling="no" src="https://money.yandex.ru/embed/small.xml?uid=41001637309968&amp;button-text=01&amp;button-size=m&amp;button-color=orange&amp;targets=%D0%94%D0%BE%D1%81%D1%82%D1%83%D0%BF+%D0%BA+%D0%B1%D0%B0%D0%B7%D0%B5+%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85+%D0%BA%D0%B2%D0%B0%D1%80%D1%82%D0%B8%D1%80&amp;default-sum=600" width="0" height="0"></iframe>
<img src=imgs/dalee1.png onclick="go();">
</body>
</html>


Но естесственно ничего не происходит. Если кто-то в курсе, как это правильно организовать - пожалуйста помогите...

  Ответить  
 
 автор: ЯСА   (01.04.2013 в 09:16)   письмо автору
 
   для: MihailGT   (01.04.2013 в 02:27)
 

попробуйте кликнуть
<iframe style="border: 120px solid red" onclick="alert (123)"></iframe>

alert увидите только тогда, когда кликнете по красному
а вот при клике по внутреннему белому никакого alert'a у вас не будет

мысль поняли?

<iframe> - это ОКНО в стене дома, но без стекла
рукой можно коснуться РАМЫ окна
но вот солнышко, которое видно в окне - его рукой потрогать нельзя :)
то, что видно в окне - это уже ДРУГОЙ мир (другой документ), который к окну никакого отношения не имеет

т.е. чтобы кликнуть по какому-то тегу внутри ифрейма, надо обращаться к документу, загруженному в этот ифрейм
а там у вас - чужой документ (доменное имя которого не совпадает с доменным именем документа, в котором прописан скрипт)
и доступ к чужому документу в HTML-формате ЗАПРЕЩЁН
[в скобках отмечу, что существует, например, HTA-формат, в котором можно организовать доступ к чужому документу -- но это аппликация, которая в виде файла размещается на вашем компьютере и открывается не в браузере, а в отдельном исполняемом окне; возможно и в браузере организовать доступ - но только в одном конкретном браузере, навесив на него плагин типа "бешеной обезьянки"]
-----

PS. по опыту знаю, что сейчас набежит кучка прид...ков со ссылками на возможности кроссдоменной работы

мой вам совет: не обращайте на них и на их ссылки внимания - программно кликнуть по чужому документу всё-равно НЕЛЬЗЯ

  Ответить  
 
 автор: MihailGT   (02.04.2013 в 15:33)   письмо автору
 
   для: ЯСА   (01.04.2013 в 09:16)
 

Спасибо, я об этом обо всем догадывался, просто решил уточнить ))

  Ответить  
 
 автор: Deed   (02.04.2013 в 20:37)   письмо автору
 
   для: MihailGT   (02.04.2013 в 15:33)
 

Это даже не окно. Это - как телевизор. Ведь зритель никак не может повлиять на сюжет передачи.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования