неадекватный блог

Показаны сообщения с ярлыком javascript. Показать все сообщения
Показаны сообщения с ярлыком javascript. Показать все сообщения

7 февр. 2009 г.

Плагин для TinyMCE

Как-то года 2-3 назад мне понадобилось прикрутить визуальный редактор для одного сайта. Даже помню, для какого :) Это был euromaa.com. Выбирал я не очень долго, сразу остановился на TinyMCE. Весь «вордовский» функционал там нужен не был, достаточно было минимального форматирования, списков и ссылок. Это всё есть в минимальной конфигурации. Но ещё мне хотелось, чтобы можно было легко добавлять заголовки (h1-h6), тут-то проблема и возникла. Можно было оставить стандартный выпадающий список стиля абзаца, но мы пошли дальше и сделали небольшой плагин, в котором заголовки реализованы кнопочками :)

Да, к чему я это всё... Сегодня сел и за час переделал плагин под 3-ю версию TinyMCE. Кому интересно, можете смело качать.

20 янв. 2009 г.

RegExp для проверки адреса e-mail

Много искал, мало нашёл, поэтому подгоняю то, что нашёл под свои нужды. Сразу приведу удовлетворяющий меня вариант регулярного выражения, пояснения будут ниже.

/^\w((-|\+|\.|)\w)*@(\w[\w\-]*\w\.)+[a-zA-Z]{2,6}$/

Теперь пояснения

  • разрешил символы ".","-","_" и "+" в имени пользователя, но они не могут стоять рядом
  • имя пользователя должно начинаться и заканчиваться с буквы или цифры
  • доменное имя не может начинаться и заканчиваться символом "-"
  • зона состоит только из букв и содержит от 2 до 6 символов
  • совсем убрал представление хоста в виде ip-адреса, т.к. с такими адресами не встречался и пользователи с такими адресами мне не нужны

Это регулярное выражение не проверяет e-mail на валидность по RFC 2822, но вполне справляется с проверкой адресов, которые можно получить на большинстве бесплатных почтовых сервисов. С корпоративными и личными доменами ещё проще, т.к. там вообще очень редко встречаются корявые адреса.

11 янв. 2009 г.

Подсветка синтаксиса на blogger.com

Прикрутил подсветку синтаксиса. Всё оказалось гораздо проще, чем можно было подумать.

  • Качаем Highlight.js и выкладываем куда-нибудь на хостинг
  • Заходим в настройку макета, туда где меняют HTML
  • Где-нибудь внутри тэга head добавляем следующий код:
    
    <script type="text/javascript" src="highlight.js"></script>
    <script type="text/javascript">
      hljs.initHighlightingOnLoad();
    </script>
    <link rel="stylesheet" href="ascetic.css">
    
    
  • Не забываем исправить пути к файлу highlight.js и файлу стилей
  • Добавляем в блог пост с кодом, предварительно поместив его в <pre><code> </code></pre>
  • Наслаждаемся полученным результатом ;)

UPD: Теперь highlight.js хостится на Яндексе.

5 авг. 2007 г.

Про AJAX

Обнаружил интересное обсуждение технологии AJAX. Суть в том, что при асинхронном ajax-запросе callback-функция прерывает выполнение функции, из которой делался запрос.

Правда, не так уж это и актуально, т.к. работает только если прерываемая функция работает довольно долго и если в ней вызываются alert() или confirm().