Определение текущего браузера.

Так уж получилось, что в настоящее время существует целый зоопарк различных браузеров для просмотра страниц. И все они могут отображать страницы чуть-чуть по разному. А иногда, когда браузер совсем старый, а в проекте используются новые технологии, страница может быть отображена совсем не верно.  Есть два пути решения — можно писать используя только те возможности, которые будет заведомо работать в самых распространенных браузерах. Если это не возможно, правилом хорошего тона считается предупредить пользователя, что в данном браузере страница может отображаться не корректно.

Самый простой способ определения браузера — при помощи Jquery. До версии Jquery 1.9, даный функционал у него в базе. После — предполагается что используется дополнительная библиотека «для поддержки старых проектов«. Описание API Jquery Browser здесь. Пример вот он:

boxModel: устанавливается в true, если страница обрабатывается браузером в соответствие с моделью W3C CSS Box Model (в настоящий момент не поддерживается в IE 6 и 7, когда они в режиме Quirks Mode). Пока документ полностью не загружен, данное свойство имеет значение null.

«Убираем за собой» или уничтожение обьектов в JavaScript

Сегодня столкнулся с тем что когда работаешь с JavaScript иногда приходится «подчищать» за собой. Например: подгружаем при помощи AJAX некий html в котором в есть в свою очередь код на JavaScript.

Вот подгружаемый код:

Т.е. чтоб не плодить  datepicker и редакторы tinymce каждый раз, как будет нажата кнопка «отредактировать», отлавливаем закрытие диалогового окна. После закрытия — уничтожаем объекты datepicker и редакторы tinymce. Т.е. если не уничтожите, может ничего страшного и не случится. Но потенциальная утечка памяти. Открыл-закрыл 10 раз — ушло 10 мегабайт.

Обычно я тоже не особо обращал внимание на такие мелочи, ибо не слишком часто сталкиваешься с ситуацией, что какой то объект  на странице нуждается в создании много раз.

Сервисное обслуживание Kyocera 2550

km2050Ну громко сказано конечно. А точнее мне понадобилось войти в сервисное меню и заставить «подкачать» тонер в бункер принудительно.

  • на правой клавиатуре набираем цифрами 10871087
  • вводим 130  в режиме обслуживания — команда «наполнить бункер тонером»
  • ждем примерно 9 минут
  • вводим 001 для выхода из режима обслуживания

Получение данных из Active Directory посредством PHP

Сам за себя лучше всего расскажет мой кусок кода. Все сдобрено максимально большим количеством комментариев. По формату построения LDAP запросов полезно почитать вот этот мануал. Ничего толковее к сожалению найти не смог.

Вот результат:

Снимок-12Вот код:

zend framework 2, Yii и иже с ними.

Сегодня почти весь день ушел на то чтобы познакомится с этими фреймворками. Изначально хотел 3-ю версию «Учет ТМЦ в организации» попробовать написать с использованием одного из этих средств. Пока негатив. Слишком много телодвижений для получения простейших результатов. Плюс чувствую пришлось бы изобретать такие-же «велосипеды» что  используются сейчас у меня в предыдущей версии. Т.е. код явно бы не упростился, а выгоды от использования данного решения получил бы минимальные. Завтра подумаю над фреймворком ExtJs.

1 219 220 221 222 223 284