Цитата:
|
Цитата:
Мне приятнее писать append, а не insertAjasentHTML (даже без ошибок написать не могу:)). PS: Я уже давно отказался от jQ, ввиду её не нужности, но для простейших операций с DOM мне приятнее её API, а не vanilla, поэтому я рад, что нашёл такую библиотеку. А то что я юзаю там 20-30%, меня не напрягает, ибо это опять таки оптимизация на спичках. |
Цитата:
Цитата:
|
Цитата:
Цитата:
|
FINoM, а как минимизировать подобные нативные конструкции как classList.contains? Попробуй... аля jq и получишь... при том получится что-то типа elem.has('class'), видишь как красиво))
А ты предлагаешь так извращаться да? var classList = 'classList', contains = 'contains'; elem[classList][contains]('class'); |
Глянул DOM level 4 спеку - а симпатично уже выходит :)
|
Rise, жми код как хочешь. В маленьких проектах синтаксис DOM API не сильно повлияет на результирующий код. В больших - юзай фреймворки.
Цитата:
|
Не ожидал такого срача на Хабре :)
|
Багфикс заставил распухнуть функцию до 415 символов. Вчера удалось вернуть прежний размер (408), но не понятно, как жать дальше. У меня создаётся впечатление, что жать уже некуда (без eval, конечно же). Вот, финальный, неминифицированный вариант: https://github.com/finom/bala/blob/master/bala.js
Жму вот этой штукой, вручную: http://closure-compiler.appspot.com/ Есть идеи, как еще можно уменьшить количество символов? Понятно, что плюс-минус пара байт ничего не решат. У меня чисто спортивный интерес. |
Сразу после предыдущего сообщения пришли две идеи:
1. В парсере заменить document.createElement('q') на document.createElement(s_addEventListener) (где s_addEventListener - это 'addEventListener'). Разница только в том, что вместо валидного элемента создается HTMLUnknownElement. 2. /f/.test(typeof s) (является ли переменная функцией) заменил на это: (typeof s)[7] (мы заранее знаем, что переменная не undefined). И небольшой чит: я убрал запятую после объявления функции в примерах, сохранив 1 байт. Теперь "убийца" занимает 400 символов. Опять сижу и думаю, что жать некуда, не пожертвовав функциональностью. |
Часовой пояс GMT +3, время: 06:23. |