|
|
updated 17.11.08 18:43 15.11.08 05:16 | developers : СэрАртём | Ускоряем jаvаscript |
ru |
Нередко перед web-разработчиками встаёт проблема низкой производительности клиентского кода, обычно реализуемого на jаvаscript. В этот момент можно услышать кучу нелестных отзывов как в адрес тех, кто поставил такую задачу, так и и в адрес тех, кто реализовал ту или иную версию jаvаscript, и даже в адрес самого языка. Однако, тут поговорка "нечего на зеркало пенять, если рожа кривая" подходит, как нельзя кстати. Посмотрим на наглядном примере. CUT: Далее
Update: 17-11-08 17:15
Как выяснилось, разные версии IE по-разному обрабатывают способы обращения к элемементам документа. Я немного изменил последний пример для того, чтобы заполняющийся полным обходом дерева элементов кэш работал с одинаковой производительностью на IE6-IE8
Mood: рабочее
|
| Comments: 6 | |
|
|
|
|
updated 02.11.08 18:06 31.10.08 16:40 | developers : СэрАртём | Призраки Бойцовского Клуба |
ru |
Баги ходють по БК, их видать издалека. Предлагаю (и буду неоригинален) собрать баги в одну кучу. Правило добавления очень простое: описать исходные условия и последовательность действий для воспроизведения бага. Если баг не требует воспроизведения, а очевиден - указывается фрагмент кода, ответственный за баг. Сообщения вида "вчера был в БК - вещь была, сегодня зашёл - её нет" не катит. Нужно чёткое описание, при каких условиях и действиях пропала вещь.
Далее идут потверждённые баги.
При отправке в чат сообщения, содержащего символы кириллицы и URL-encoded символы в кодировке UTF-8, первые заменяются на знаки "?", а последние отображаются в decoded виде. СкрытьЕсли отправить сообщение "Читайте скролл: http://scrolls.combats.com/~%D0%92%D0%BE%D0%BB%D1%8B%D0%BD%D1%89%D0%B8%D0%BA" то в чате будет отображено: "??????? ??????: http://scrolls.combats.com/~Волынщик"
Ошибка jаvаscript при отображении custom hint при наведении указателя на количество предметов в пачке. СкрытьОткрыть инвентарь в разделе, где есть группированные предметы. Навести указатель мыши на количество предметов в пачке (например, "x99"). В строке статуса появляется сообщение об ошибке jаvаscript: 'ls***' is undefined. Проблема связана с реализацией торговой панели, где всплывающая подсказка содержит полную информацию о премете. Лечится путём удаления атрибутов onmouseover и onmouseout у элемента <small></small>
Ошибка вёрстки списка заявок в групповых поединках, приводящая к разрушению структуры документа. Скрыть
Каждая заявка разделена на левую и правую стороны следующим HTML-фрагментом, в котором нарушена вложенность: <font class=dsc><i>против</font></i>
В Internet Explorer 8 не отображается список игроков, находящихся в комнате. СкрытьВ функции wu(inv,name,id,align,klan,level,slp,trv,city,att,private,afk,afk_text,dnd,dnd_text,bat,ill,sms) в окне списка игроков комнаты (http://dreamscity.combats.com/buttons.pl?list=) используется переменная opener, которая не инициализируется как локальная, а фактически является членом объекта window, что вызывает отказ во всех правильных браузерах (в том числе, IE8).
Ошибка объявления функций в top-level окне, приводящая к несовместимости с браузерами, отличными, от IE.СкрытьИмя идентификатора, в том числе, функции, не должно содержить специальных символов, в частности, точку ("."). Однако, изменения, связанные с внедрением панели быстрого доступа, содержат ряд объявлений функций вида
function top.OnUse(what) {
...
}
Правильно добавлять члены top-level окну так:
top.OnUse = function (what) {
...
}
При подтормаживании канала возможно неоднократное появление в чате своего сообщения или сообщений других участников чатаСкрытьВ функции AjaxLoad(url, fun) производится проверка на факт отправки сообщения:
if (AjaxBegin) return 0;
Однако, значение AjaxBegin сбрасывается в 0 через 1 секунду после отправки сообщения, не зависимо от результата отправки:
ab = setTimeout('AjaxBegin = 0',1000);
Как следствие, на загруженном канале возможно инициирование нового соединения, пока открыто старое. В реализации объекта XMLHttpRequest от Microsoft есть один прикол: он может открывать несколько соединений одновременно, но обработчик события onreadystatechange будет только один и свойство readyState будет возвращать статус только первого соединения. В результате, на каждый пакет, приходящий после повторной отправки сообщений, в чат будет кидаться пачка сообщений, принятая по первому запросу. Баг лечится путём повторного создания объекта req
Зависание статистики боя, проведённого в Изломе Хаоса.СкрытьПосле того, как завершён бой в Изломе Хаоса, его статистика (количество убитых ботов) будет отображаться на любой другой страничке боя Abbadon'а. Помогает только перезагрузка окна БК.
Ошибка в кодировке при поиске в аукционеСкрыть1) в поле "Имя" вводим фразу "Сущность ресурса"
2) делаем ставку на один из найденных лотов
3) в поле "Имя" теперь вписано "%D1%F3%F9%ED%EE%F1%F2%FC+%F0%E5%F1%F3%F0%F1%E0" и, соответственно, пропали предложения. Необходимо заново вписать в поле "Имя" название искомого предмета и снова сделать поиск.
100% загрузка процессора при наведении на телепортатор в зале ожидания. СкрытьОбъект с id=central_port имеет обработчик события onmousemove. Это событие генерируется не только в тот момент, когда указатель мыши попадает в границы объекта, а непрерывно, пока указатель мыши находится в границах объекта. Правильно было бы инициализировать обработчик события onmouseover, а onmousemove удалить.
Mood: хитро-коварное, озлобленно-рабочее
|
| Comments: 13 | |
|
|
|
|
updated 28.11.08 00:07 12.11.07 21:50 | developers : СэрАртём | Менеджер плагинов для БК |
ru |
Любой человек до старости остаётся ребёнком. Все мы играем в свои игры. Кто-то в дочки-матери (только куклы заменяются на детей), кто-то в войнушки (только палки-пистолетики становятся смертельным оружием)...
Программист - он тоже ребёнок. Он тоже не прочь поиграться с компьютером. По крайней мере, хороший программист. И игры у него своеобразные. Кому-то хочется взломать сайт Пентагона, кому-то заставить железяку говорить, кому-то чужие игры неинтересны и он пишет свои.
CUT: Продолжение
Update: 05-02-08 21:17
Приветствуем нового участника проекта: Soltik ! С первых же дней он бросился в работу и внёс непоправимые улучшения в бродилку по пещере
Update: 19-07-08 00:56
Версия обновлена до 1.3. Все плагины адаптированы для смешанной работы в зонах .RU и .COM, серьёзные изменения в бродилке, в лекаре, исправлены ошибки. Качаем с sourceforge
Update: 13-10-08 22:49
Сегодня проект переехал на Google code. Все изменения в исходный код будут допустимы только там. Проект на SourceForge.NET сворачивается: меня не устраивает ни их скорость, ни качество сервиса. Некоторое время загрузка релиза 1.3 будет доступна по указанному выше адресу. Новый релиз будет выложен уже на гугле ;)
Update: 09-11-08 01:36
Опубликован релиз 1.4. Добавлено солидное количество новых полезных плагинов. Как обычно, исправлены замеченные ошибки, внесены новые. Закачка доступна с сервера открытого кода Google code. Описание процесса установки можно найти в разделе Быстрый старт
Update: 27-11-08 22:58
Опубликован релиз 1.5. В релиз вошли новые важные плагины: "Проверка надёжности диггера", "Сохранение состояния награды", "Монитор хаотов". В плагин "Простой лекарь" добавлена возможность сохранения всего процесса работы в журнал. Значительные изменения в плагине "Отдельный приватный чат с игроками", и очень серьёзные изменения в "Автоответчике". Панель настроек стала ещё удобнее. Новая версия, как обычно, доступна в разделе загрузок
Mood: воодушевлён
|
| Comments: 171 | |
|
|
|
27.08.07 21:14 | developers : Yan Kos | Книги Win32 API |
ru |
Может кому понадобится эти книги для Виндовозников решивших написать что нить под Винь 9х.
Хотя книги и старие но Рихтер и Петзольд научат хорошому тону. Да и вообще это из разряда "must have"
Книги по Win32 API для начинающих.
- Программирование для Windows 95 (в двух томах).[Петзолд Ч.]
- Windows для профессионалов. Создание эффективных Win32-пpилoжeний с учетом специфики 64-разрядной версии Windows.[Джеффри Рихтер]
- Системное программирование в среде Windows.[Джонсон М. Харт]
- Проектирование интерфейса пользователя средствами Win32 API[Р.М. Ганеев]
CUT: Продолжение
Music: Alkonost - Ночь Перед Битвой (Путь Непройденный)
|
| Comments: 7 | |
|
|
|
19.07.07 12:45 | developers : СэрАртём | Передачи: баг с подсветкой характеристик |
ru |
Как оказалось после нескольких минут исследований, чтобы в передачах подсвечивались характеристики предмета, нужно IFRAME-объекту установить свойства nTop и nLeft, хотя бы в 0. То есть, по окончанию загрузки страницы достаточно выполнить следующий код:
var IFRAME = top.User.Framework.GetTab('main').oFrame.firstChild;
IFRAME.nLeft = 25;
IFRAME.nTop = 25;
И всё прекрасно работает!
CUT: Плагин для Maxthon, исправляющий этот досадный баг
|
|
|
|
|
20.06.07 23:16 | developers : Cripter | ДДОС |
ru |
Скажу сразу статья не моя но более полно пожалуй и не напишешь. Тем более, что данная тема очень актуальна в эти нелегкие времена.
Powered by vBulletin® Russian v3.6.4, Copyright ©2000-2007, Jelsoft Enterprises Ltd.
Сначало, я расскажу про Ддос. Какие виды атак существует, как их отличить, чем они сильны… И так, как понять, каким видом флуда вас Ддос-ят? Очень просто - достаточно просто поверхностно взглянуть на сервер. Если в разы увеличились логи апача - значит это хттп флуд. Если нельзя присоединиться ни к одному из сервисов (к примеру, фтп) по причине того, что максимальное количество соединений достигнуто, значит, это SYN\ACK флуд. При ping flood практически не будет заметна разница между исходящим и входящим трафиком.
CUT: Продолжение
|
| Comments: 6 | |
|
|
Total posts: 10 Pages: 1
«« « 1 » »»
|
|
| Mo |
Tu |
We |
Th |
Fr |
Sa |
Su |
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | | 8 | 9 | 10 | 11 | 12 | 13 | 14 | | 15 | 16 | 17 | 18 | 19 | 20 | 21 | | 22 | 23 | 24 | 25 | 26 | 27 | 28 | | 29 | 30 | 31 | | | | |
|