Вызов методов Javascript API, обработка событий (ВК IFrame)

Готовые уроки IFrame + ВКонтакте API

Вызов методов Javascript API, обработка событий (ВК IFrame)

Сообщение Александр » 09 июл 2010, 21:40

Вызов методов Javascript API, обработка событий (ВКонтакте IFrame)
JavaScript, Iframe, ВКонтакте API, HTML

В уроке показано, как вызывать методы Javascript API в своём IFrame приложении и как отслеживать действий на странице с приложением.

Для работы приложения нужен хостинг.

Вызов методов Javascript API
Для осуществления внешних вызовов необходимо использовать функцию VK.callMethod(String methodName, Object param1, Object param2, ...).

Доступные методы Javascript API:
showInstallBox, showSettingsBox, showInviteBox, showPaymentBox, showMerchantPaymentBox, showProfilePhotoBox, saveWallPost, resizeWindow, scrollWindow, setTitle, setLocation.

Все они используются аналогично. Некоторые из них требуют указать дополнительные параметры, а некоторые нет.

Например, showInstallBox не требует дополнительных параметров и вызывается так:


А setTitle требует дополнительного праметра String title и вызывается так:


Если нужно указать 2 параметра, то они указываются через запятую, например, метод resizeWindow:



Обработка событий
В результате совершения пользователем каких-либо действий на странице с приложением, родительское окно создает события, которые можно отслеживать с помощью функции VK.addCallback(String name, Function value).

Cписок событий:
onApplicationAdded, onSettingsChanged, onBalanceChanged, onMerchantPaymentCancel, onMerchantPaymentSuccess, onMerchantPaymentFail, onProfilePhotoSave, onWallPostSave, onWallPostCancel, onWindowResized, onLocationChanged, onWindowBlur, onWindowFocus.

Некоторые события содержат параметры, в которых храняться новые значения. Например, onSettingsChanged - содержит параметр settings в виде битовой маски выставленных значений настроек.


Пример использования:
  1. <html>
  2. <head>
  3. <!-- подключаем xd_connection.js -->
  4. <script src="http://vkontakte.ru/js/api/xd_connection.js?2" type="text/javascript"></script>
  5.  
  6. <script type="text/javascript" charset="cp1251" >
  7. window.onload = (function() {   // когда загрузится вся страница
  8.     VK.init(function() {    // инициализируем Vk API
  9.  
  10.     // изменяем заголовок окна браузера
  11.     VK.callMethod("setTitle", 'API flapps.ru');
  12.     // изменяем ширину и высоту элемента IFrame
  13.     VK.callMethod("resizeWindow", 807, 600);
  14.     // открываем окно с пользовательскими настройками приложения
  15.     VK.callMethod("showSettingsBox", 2048);
  16.  
  17.     // когда пользователь изменяет настройки приложений
  18.     VK.addCallback("onSettingsChanged", onSettingsChanged);
  19.  
  20.     function onSettingsChanged(settings) {
  21.         alert('Настройки изменены: ' + settings);
  22.     }
  23.  
  24.  
  25.     });
  26. });
  27. </script>
  28. </head>
  29. <body>
  30. <div id="info">http://flapps.ru</div>
  31. </body>
  32. </html>


Чтобы проверить работу, создайте html файл, загрузите его на сервер и настройте приложение вконтакте.
Если не знаете как это сделать, то посмотрите как это было сделано здесь topic721.html

Официальная документация по методам и событиям http://vkontakte.ru/page9279356

За это сообщение автора Александр поблагодарили - 3:
Gas, lewka151, Влад
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
 
Автор темы
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45
Откуда: Санкт-Петербург
Благодарил (а): 126 раз.
Поблагодарили: 771 раз.

Чтобы убрать блок с рекламой, зарегистрируйтесь на форуме или войдите.

Google
 



Re: Вызов методов Javascript API, обработка событий (ВК IFrame)

Сообщение Doker » 12 июл 2010, 07:38

ооогромное спасибо! :)
my icq numbers: 403305362 и 484613
Аватара пользователя
Doker
Модератор
Модератор
 
Сообщения: 1026
Зарегистрирован: 07 май 2010, 18:53
Благодарил (а): 35 раз.
Поблагодарили: 52 раз.

Re: Вызов методов Javascript API, обработка событий (ВК IFrame)

Сообщение Doker » 23 июл 2010, 11:04

Все легко и просто =))
my icq numbers: 403305362 и 484613
Аватара пользователя
Doker
Модератор
Модератор
 
Сообщения: 1026
Зарегистрирован: 07 май 2010, 18:53
Благодарил (а): 35 раз.
Поблагодарили: 52 раз.

Re: Вызов методов Javascript API, обработка событий (ВК IFrame)

Сообщение egor » 23 июл 2010, 17:50

Спасибо!
Мое приложение:
Анекдоты: http://vkontakte.ru/app1886032
egor

 
Сообщения: 35
Зарегистрирован: 23 июл 2010, 10:58
Благодарил (а): 6 раз.
Поблагодарили: 0 раз.

Re: Вызов методов Javascript API, обработка событий (ВК IFrame)

Сообщение Deniska » 18 дек 2010, 09:18

Как вызвать методы в php?

UPD: уже понял , с помощью echo .
Аватара пользователя
Deniska

 
Сообщения: 654
Зарегистрирован: 30 окт 2009, 00:07
Благодарил (а): 15 раз.
Поблагодарили: 48 раз.

Re: Вызов методов Javascript API, обработка событий (ВК IFrame)

Сообщение danger-99 » 24 фев 2011, 20:33

Обьясни как вызвать коды в php?
Изображение
Аватара пользователя
danger-99

 
Сообщения: 45
Зарегистрирован: 13 фев 2011, 22:24
Благодарил (а): 5 раз.
Поблагодарили: 0 раз.


Вернуться в Уроки IFrame ВКонтакте



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0