- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
<div class="checkbox removeSpan">
<input id="all-standard-colors" name="all-standard-colors" type="checkbox"
data-bind="checked: $parent.selectAllStandardColors enable: $parent.isTabEnabled"/>
<label for="all-standard-colors">All standard</label>
</div>
<style>
div.checkbox > input + label {
padding: 4px 0 4px 29px;
background-image: url("../images/unchecked-checkbox.png");
background-size: 21px;
background-position: left center;
background-repeat: no-repeat;
}
div.checkbox > input:checked + label {
background-image: url("../images/checkbox-checked.png");
background-size: 21px;
background-position: left center;
background-repeat: no-repeat;
}
</style>
<script>
$(document).ready(function() {
setInterval(function(){
$('.removeSpan span').remove();
}, 2000);
});
</script>
UI на knockout.js. Есть бага - пропадает галочка на чекбоксе. Выясняется что knockout для валидации вставляет после input тега невидимый span
<span></span>
Неизвестный товарищ фиксит это не вдаваясь в детали верстки и CSS селекторы - добавляет специальный класс, которым маркает все чекбоксы и поллер который убирает из них span каждые 2 секунды. Но про это никто не узнает. В течении полугода появляется еще десяток другой багов с отображением чекбоксов которые фиксят не вдаваясь в детали. И только потом замечают странный класс removeSpan и находят поллер в недрах domUtil.js, удаляют его и меняют один символ в стилях - вместо div.checkbox > input + label стало div.checkbox > input ~ label
AnalPerOral 05.07.2017 16:40 # 0
P.S.: И это я ещё не прошёлся по "PHP", который так же преизрядно загрязнили кроваво-каловыми фреймворками...
AnalPerOral 05.07.2017 16:52 # 0
inho 09.07.2017 20:25 # −2
subaru 09.07.2017 20:39 # −1
AnalPerOral 10.07.2017 00:06 # −1
AnalPerOral 10.07.2017 00:12 # −1
jhonnysweets 18.07.2017 19:00 # 0
Сейчас это называется "легаси", камрад. И все его ненавидят. По работе пришлось как-то разбирать js-файл без зависимостей на 3к строк. Так вот ебал я вас и ваши полотна в то самое очко, псы.
AnalPerOral 18.07.2017 19:19 # −1
jhonnysweets 20.07.2017 16:01 # 0
sam 21.07.2017 20:05 # +1
пилим сайт, где постоянно появляется новая инфа.
Юзер заходит на него.
Чтоб максимально шустро выдать ему нужное - выплёвываем отрисованную из пыха страницу с JS обновлением данных.
И там и там зависимость и привязанность к конкретной вёрстке.
Изменение с одной стороны, приведут к изменениям на другой.
И это при условии, что проггер полностью в курсе функционирования обеих частей, иначе - помойка.
И, ведь в данном случае, речь шла лишь об одном-единственном элементе( новостная лента?).
А если практически все элементы такие? -Если речь о сайте, норм работающем( все валидации итд ) как с JS, так и без него ? -Это ощутимое дублирование с необходимостью поддержки полной аналогичности работы по обе стороны.
).
Отсюда и пошли ноды да реакты.
Прикол в том, что пишешь один код на JS( с минимальным дублированием ), он как надо пережёвывается на ноде и выплёвывается пользователю как ответ сервера( т.е аналогично, скажем, пыху ). С другой стороны, на клиенте этот же код работает как клиентский JS( т.е тупо нет никакой надобности ни в каком jQuery.. по крайней мере, в случае с реактом ).
Обычно в пакетах с гитхаба/npm валяются уже собранные клиентские и серверные скрипты для запуска "из коробки"( т.е нода не нужна ), если автор пакета не бомж.
ECMAScript - прост "стандарт" JS, по которому пилятся те или иные его версии.
CoffeeScript - дерьмище, которое уже RIP.
TypeScript - для любителей солёненького во рту. Тот же JS, только без ключевой своей плюхи - там статическая типизация данных. Обычн по нему прост текут вчерашние C/C++/C#-шники, перебравшиеся в веб-прогу на JS и желающие, "шоб в JS, но как на сях було", ибо иначе горит.