Итак, кто не в курсе, E4X — это расширение стандарта ECMAScript (на котором основан JavaScript, ActionScript, итд.),
которое предоставляет простой и удобный интерфейс для работы с XML.
Несмотря на то, что первая версия была опубликована в 2004, E4X не обрел широкого распространения, а жаль.
Таким образом, его поддержка ограничивается в следующих JS движках: Gecko (Firefox), SpiderMonkey (основан на Gecko) и Rhino (также движок от Mozilla, только написанный на Java).
Так что, если вы динозавр ретроград даже используете такой древний Firefox, как 1.5, то там уже реализована поддержка E4X!
В качестве затравки приведу несколько фишек в E4X
XML-структуру можно писать прямо в JS-коде (э...
DreamWeaver: CodeHints, CodeColoring и TagLibraries
Задача:
подключить кастомную библиотеку тегов
сделать подсветку синтаксиса JS в XML-файле
расширить подсказки для JavaScript кода своим глобальным объектом
Если так случилось, что в качестве своего постоянного редактора кода или IDE
вы выбрали Adobe DreamWeaver (прим. речь идет о версии CS5.5), то попытаемся немного упростить себе жизнь, работая в нём.
А для этого нужно максимально возможно его допилить под себя для эффективной работы и экономии времени.
Распложение файлов
Глобальные настройки находятся в папке с установленным DW, например для Windows 7:
%ProgramFiles%\Adobe\Adobe Dreamweaver CS5.5\configuration\ (далее в статье %DW_Config_Common%)
Локальные пользо...
Задача: написать шаблон для форматирования чисел в разных локалях
Для форматирования чисел в XSLT существует стандартная функция format-number(number, format, decimal-format).
Эта функция форматирует число таким образом, что вставляет разделитель тысяч и обрезает число десятичных знаков.
Но у неё есть один баг: вставка разделителя тысяч осуществляется даже тогда, когда число содержит всего 4 знака, т.е меньше 10 тысяч, а согласно стандарту это делать не нужно.
Если у вас многоязычный сайт, то форматирование чисел для разных локалей должно быть разным.
Привожу пример решения задачи в виде одного XSLT-шаблона:
,
,
...
Хотел просто выложить плагин в паблик для тех кому нужно, но потом подумал, что напишу лучше вводную статью про написание плагинов для джиквери, новичкам пригодиться :)
Итак, для написания плагина под jQuery не нужно обладать какими-то специальными знаниями. Для этого мы всего лишь создаем новый метод у объекта jQuery.fn.
Код с подробными комментариями по созданию плагина ниже:
File progress-bar.js:
// jQuery plugin: progress-bar
// создаем анонимную функцию, в которую первым аргументом передаем объект jQuery, это нужно для того, чтобы в случае использования jQuery.noConflict() ничего не поломалось
;(function($)
{
// создаем новый метод у объект $.fn, который в последствии можно будет...
В продолжении темы про реализацию «include file» в javascript, я переписал и дополнил код в более удобную одну функцию-загрузчик javascript файлов.
Подгрузка может идти с любых адресов: локальных, кроссдоменных, итд., т.к подключение файла происходит через создание новых элементов <script>.
Применение: если на вашем сайте не используется никаких фреймворков типа jQuery, где уже есть встроенные загрузчики
В отличии от простого подключения внешнего файла в скрипте через document.write('<script type="text/javascript" src="/js/my/sample/file.js"></script>'), использование данной функции предоставляет:
синхронную/асинхронную возможность подгружать любое кол...