Управление виджетами graddit при помощи callback функций

2012-06-24
    Мудрёный заголовок, но суть проста: по умолчанию виджеты отображаются в том месте страницы, где находится их контейнер, id которого вы передаёте на сервер. Но что, если, к примеру, вы хотите, чтобы виджет лучших постов появлялся при достижении читателем конца страницы (и исчезал при прокрутке вверх)? Для упрощения решения этой задачи виджеты поддерживают параметр callback; при помощи него вы можете передать управление вашему собственному скрипту после того, как код виджета отработал. Более того, в файле http://www.graddit.com/js/graddit-extras.js есть рабочий пример функции, которую вполне уже можно использовать. Итак, рассмотрим, как всё это работает на примере виджета лучших сообщений.

Вот код (он вставлен в это самое место поста):
<div id='callback_example' style='visibility: hidden; display: none; position: fixed; right: 10px; bottom: 10px;'>Лучшее:</div><script type="text/javascript" src="http://www.graddit.com/showtop/rus/8?id=callback_example&callback=gradditDisplayWidgetCallback"></script>

Код здесь, но виджета вы не увидите, потому что функция gradditDisplayWidgetCallback изменила поведение виджета. Теперь он будет появляться в нижнем правом углу, если вы прокрутите страницу вниз. И, соответственно, исчезать, если вы прокрутите страницу обратно вверх.

    Если вы хотите использовать javascript функцию из примера, то вам нужно подключить js файл в шаблоне ваших страниц, добавив туда такую строку:

<script type="text/javascript" src="http://www.graddit.com/js/graddit-extras.js"></script>

    Вот и всё, что вам нужно: подключить файл graddit-extras.js и указать callback функцию при вызове виджета. Файл graddit-extras.js время от времени будет пополняться новыми полезными функциями (следите за анонсами).

    Напомню, что внешний вид виджетов настраивается в панели управления.

Оцени и поделись
{[['']]}


Ещё больше полезного:

Комментариев нет:

Отправить комментарий