thehighhomie: кстати, на сайте который вы привели в пример, делается именно так, как сказал этот чувак: при нажатии на кнопку цвета с <body> снимаются все классы и добавляется один нужный.
thehighhomie: Если вам просто надо загружать разные CSS, вы их берете и загружаете. Если хотите их кешировать, то сначала загружаете все нужные CSS в пустой iframe, должно сработать. Если хотите изменять существующие стили, то оперируете со styleSheet. Где-то в тех степях есть возможность поставить флажок типа "не использовать этот styleSheet", если вдруг вы все таки захотите использовать много элементов
А можно как-то с помощью findstr искать строку в этой же самой строке? Чтоб без всяких файлов и точек. Тогда бы получилось.
Ну как бы в том и соль этого кусочка кода, что он маленький и функциональный) Я его прост вставляю куда хочу и радуюсь цветным буковкам помогающим мне ориентироваться в логах. Многофункциональные утилиты это уже чересчур. Но спасибо!
Ну вообще можно конечно, но соль в том, чтоб выводить раскрашенные сообщения из .bat.
Вообще изначально мне это пришло в голову в виду того, что для некоей важной процедуры нужно из .bat вызвать несколько .exe, каждый из которых выводит просто неадекватную тучу текста. Чтобы хоть как-то в этом тексте ориентироваться, было бы приятно иметь несколько ярких цветных анкоров)
Собственно задача решена, цветные названия вызываемых файлов есть, все прекрасно, но мне почему-то вдруг стало интересно, можно ли избавиться от этих точек и двоеточек)
Может быть я чего-то неправильно понимаю, но я почитал инструкцию на сайте displaycal.net (quickstart guide), и, знаете, там написано что надо 1) Launch DisplayCAL, 2) Connect your measurement device to your computer. Ну и список поддерживаемых колориметров там тоже есть)
Так что либо колориметр покупать, либо под wine всю эту фигню юзать, наверное.
Андрей Рысь: не то чтобы я какой-то крутой разработчик сейчас, но ваши слова я вполне мог бы сам сказать около года назад. Вам правильно посоветовали - если у вас нету никакого интереса к предмету, вам остается только ловить крохи знаний, случайно попадающие в ваше поле зрения.
Под интересом я подразумеваю тот внутренний огонь, который разжигает желание действовать и экспериментировать. Например год назад я вряд ли чем-то отличался от вас - у меня было много теории и совсем не было практики. С тех пор я сделал:
1. yaTranslate.js - скрипт, асинхронно переводящий текст страницы через API Яндекса,
2. Лёгкий веб-сервер на node.js,
3. $-плагин, добавляющий крутой адаптивный кроссбраузерный слайдер,
4. Аналог async'а для node.js,
5. Bookmarklet generator,
6. Простую библиотеку для работы с геометрическими объектами,
7. Простой, но очень красивый и вообще приятный script-loader.js, контролирующий загрузку скриптов на странице,
Ну и скорее всего много других вещей, которые наверное можно было бы выделить в отдельные сущности и адаптировать для использования в других средах. Ах да, еще огромное количество плюшек и инструментов, которыми я пользуюсь как в браузере, так и по остальным нуждам: юзерскрипты, букмарклеты, просто полезные функции, инструменты под node.js. Часть из этого - пустышки, имеющие смысл только как учебные пособия, частью я пользуюсь в работе ежедневно.
Если что-то из этого вы считаете достойным, то будьте уверены - это я писал только потому что мне было интересно. Большинство скриптов вообще были написаны только потому что "Иисус, как же мне нравится нода и весь этот ES6" или "меня возбуждает одно упоминание о DOMSubtreeModified".
Нужна практика - практикуйтесь. Как не можете задачи ставить? Вы в своем вопросе поставили задачу - сделать скрипт, который бы... в общем решающий ту проблему, которую вы описали в вопросе.
Андрей Рысь: Чего? Это возможный минимум действий, мне кажется. Этот equal-heights.js производит их намного большее количество, ну и он конечно же надежней.
Андрей Рысь: в каком смысле как? Сам алгоритм? Он же довольно прозрачный... ну ладно, если вам интересно, то по ресайзу 1) обновляем количество колонок, 2) в каждом ряду ищем элемент с максимальной высотой, выставляем эту высоту остальным элементам в ряду.
Андрей Рысь: то, что вы хотите, можно сделать адаптивно и кроссбраузерно до IE7 только с помощью JS. Мне такое дерьмо как раз неделю назад пришлось писать) Получился локальный treeWalker, за первый проход собирающий высоты блоков и дочерних блоков, считающий максимум в зависимости от количества колонок, за второй проход раздающий высоты.
И я хочу сказать, что оно того не стоило) Работает, конечно, но довольно монструозно.
Вы посмотрите код Яндекс.метрики, там все относительно просто. Функция, которая добавляет в window свойство yaCounterX запихивается в массив window['yandex_metrika_callbacks'], функции из которого потом выполняются скриптом watch.js, которому тоже нужно время на загрузку)
Как-то так:
1. Выполнение скрипта непосредственно метрики,
2. Сразу за этим начало загрузки watch.js, или в случае с Оперой не сразу за этим, а on DOMContentLoaded,
3. По загрузке watch.js, его выполнение, ну и где-то там в коде можно увидеть выполнение функций из массива window['yandex_metrika_callbacks'], одна из которых и добавляет yaCounter в window.
Не видно этого свойства может быть только 1) если оно еще не добавлено или 2) если dev tools тупят. Я склоняюсь к второму варианту)
<body>
снимаются все классы и добавляется один нужный.