Blog. Just Blog

Web-мастеру и не только

Полезные решения для Web-мастеров
Web-мастеру и не только - RSS-канал Web-мастеру и не только - Карта сайта

Сейчас на сайте 2 гостей и 3 новостей

23.09.2008 | Категория: Web-мастеру и не только | Автор: ManHunter
Смешно звучит, правда? А ведь такие уродливые сочетания встречаются на очень многих сайтах. И если в английском языке достаточно написать что-то типа day(s), byte(s) и это будет смотреться вполне нормально, то в русском языке в конструкциях "число + слово" обязательно придется учитывать склонения. Безумные извраты типа "гостя(ей)" и "новость(ей)" я даже не рассматриваю, за такое надо лишать доступа к компьютеру навсегда.

Чтобы писать по-русски на своих сайтах я использую такую универсальную функцию:
  1. function num2word($num,$words) {
  2.   $num=$num%100;
  3.   if ($num>19) { $num=$num%10; }
  4.   switch ($num) {
  5.     case 1:  { return($words[0]); }
  6.     case 2:
  7.     case 3:
  8.     case 4:  { return($words[1]); }
  9.     default: { return($words[2]); }
  10.   }
  11. }
Параметры вызова: $num - число, $words - массив склонений нужного слова. Как формируется массив вы можете посмотреть на примерах.

Читать статью целиком »
Просмотров: 4948 | Комментариев: 13

Flash-навигация при отключенном Flash

15.09.2008 | Категория: Web-мастеру и не только | Автор: ManHunter
Последнее время технология Flash на сайтах становится все более популярной. Красивые анимированные меню, баннеры, и даже целые сайты выполнены на Flash. Не так давно я с интересом узнал, что изначально Flash создавался для просмотра анимированных порнушных мультиков и совершенно не предназначался для сайтостроительства. Предположим, вы относитесь к тому редкому виду дизайнеров, которые используют Flash "редко, но метко", и сделали на нем красивую навигацию для сайта. У большинства пользователей все работает как надо, ссылки, прописанные в Flash-кнопках открываются, в общем все замечательно. А что увидит пользователь сайта, если у него в браузере отключена поддержка Flash, например в целях безопасности или экономии трафика? Правильно, не увидит НИЧЕГО. Для решения проблемы предлагаю использовать следующий код:
  1. <object type="application/x-shockwave-flash"
  2.   data="images/contact_button.swf" width="100" height="30">
  3.   <param name="menu" value="false" />
  4.   <param name="quality" value="high" />
  5.   <param name="wmode" value="transparent" />
  6.   <param name="bgcolor" value="#ffffff" />
  7.   <param name="movie" value="images/contact_button.swf" />
  8.   <a href="contact.html"><img src="images/contact_button.gif" width="100"
  9.   height="30" border="0" alt="Контакты" /></a>
  10. </object>
Если все нормально, то посетитель увидит красивую кнопку contact_button.swf, если в браузере отключен Flash, будет показана ссылка на страницу контактов и графическая кнопка contact_button.gif. Если отключены и картинки, то будет показан текст-заместитель "Контакты". Как видите, в любом случае посетитель не потеряется на вашем сайте и попадет куда надо. Приведенный код работает во всех браузерах и 100% проходит проверку на валидаторе W3C.

Просмотров: 4650 | Комментариев: 6

Запуск нескольких функций по событию onLoad

04.09.2008 | Категория: Web-мастеру и не только | Автор: ManHunter
Начнем с документации:


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


Это событие часто используется различными скриптами для модификации страницы сразу после загрузки, например прописываются красивые всплывающие подсказки вместо стандартных атрибутов title, подсвечивается код, выполняется инициализация других скриптов или выполняются другие полезные действия в зависимости от фантазии разработчиков. Проблема в том, что разработчиков с их фантазией много, а событие на странице только одно. И получается ситуация, когда хочется подключить на свою web-страничку несколько скриптов разных производителей, и все они для своей работы хотят монопольно использовать событие onLoad. Конечно, при наличии определенных навыков можно подправить исходный код. Но как быть, если исходный код скриптов недоступен, например файлы расположены на стороннем сервере или упакованы (зашифрованы)? Что делать с упакованными и шифрованными скриптами и их "аффтарами" я расскажу потом, это тема для отдельной статьи, а сейчас будет решаться задача с выполнением нескольких функций по событию onLoad.

Читать статью целиком »
Просмотров: 19019 | Комментариев: 14

Нестандартный способ определения браузера Internet Explorer

02.09.2008 | Категория: Web-мастеру и не только | Автор: ManHunter
Начиная с версии 1.2 в языке JavaScript есть интересный метод работы с функциями - arguments.callee. Откроем почитать документацию.


arguments.callee
Специфицирует тело исполняемой в данный момент функции. Свойство callee доступно только в теле функции. Ключевое слово this не относится к исполняемой в данный момент функции. Используйте свойство callee для обращения к функции в теле этой функции.


Проще говоря, результатом выполнения arguments.callee внутри какой-нибудь функции будет тело этой функции. Для наглядного примера код:
  1. function myFunc() {
  2.   return arguments.callee;
  3. }
  4. alert(myFunc());
покажет в MessageBox'е следующее:


Результат arguments.callee

то есть в точности код вызванной функции. "Ага!" - подумали суровые уральские мужики. - "А если мы поместим в тело функции что-нибудь еще, например железный лом комментарий?" Подумали и поместили.

Читать статью целиком »
Просмотров: 5656 | Комментариев: 5

prev 01 ... 26 27 28 29 30 31 32 33 34 next
Наверх
Powered by PCL's Speckled Band Engine 0.2 RC3
© ManHunter / PCL, 2008-2021
При использовании материалов ссылка на сайт обязательна
Время генерации: 0.07 сек. / MySQL: 2 (0.0032 сек.) / Память: 4.75 Mb
Наверх