среда, 28 марта 2012 г.

Использование JQuery в XPages



Классный фрэймворк этот JQuery и раз уж Xpages дает возможность навешивать таблицы стилей и скриптовые библиотеки, то почему бы не воспользоваться этим при создании web-приложений для IBM Lotus :)

Как раз на работе подвернулась одна задача для этого и пришлось разобраться, что, как, зачем и почему.

Итак, очень помогло вот это сообщение:
http://notesonmobile.tumblr.com/post/8825720518/adding-jquery-mobile-to-an-xpage
Собственно, нужно в сорс XPage добавить строки:
<xp:script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js" clientSide="true">
</xp:script> <xp:styleSheet href="http://code.jquery.com/mobile/1.0b1/jquery.mobile-1.0b1.min.css" />
<xp:script src="http://code.jquery.com/mobile/1.0b1/jquery.mobile-1.0b1.min.js" clientSide="true"> </xp:script>
Или же можно скачать эти три файла и разместить js-файлы в Resources - Files, а CSS - в разделе Resources - Style Sheets. При этом нужно будет сделать 2 вещи:
1) в параметре src оставить только название добавленных файлов
2) пробежаться по CSS и скачать все необходимые картинки, разместив их в Resources - Files
После этого можно будет уже писать:
<div data-role="page">
   <div data-role="content">
      <ul data-role="listview" >
         <!-- <xp:repeat> tags go in here -->
      </ul>
   </div> <!--content-->
</div> <!--page-->
Ну и конечно же не забываем удалить в repeat control параметр id - иначе стили не будут применяться к повторяемым объектам.

3 комментария:

  1. есть конкретный проект, в котором оправдано использование внешнего фреймворка или эт просто академический интерес?

    ОтветитьУдалить
  2. Проект на работе. Нужно было сваять веб-морду для i-устройств. Сделать нужно было красиво и оперативно. В итоге сваял два варианта - один по уже использовавшемуся шаблону с некоторыми доработками и один на jquery. В итоге приняли тот, что по шаблону, ну а второй вариант получается, что просто добавил интересного опыта :)

    ОтветитьУдалить
  3. Не получается подключить yandex maps api. Выдаёт ошибку. Там линк такой: /?load=package.full&lang=ru-RU

    ОтветитьУдалить