БлогNot. Блог ПерСа

javascript графика ссср большевизм дата война вебдезигн css html детское личное быт эзотерика маразм числа random c++ общество антиглобализм россия америка европа qt программирование список учебное памятка textprocessing цвет время ошибка php игра шахматы миф образование литература спам мошенничество рунет социалки ссылки стихи цензура статистика софт bat windows mathcad алгоритм все теги все комментарии свежие изменения


[1-15] [16-30] ... [2626-2640] [2641-2653]


Прикреплённое сообщение, правила и всё такое

Остеклить балкон, лоджию в Новосибирске? Проверено, Вам сюда

Encoding: UTF-8 (Unicode). Primary language: Russian. Для полноценной работы блога нужны включённые в браузере картинки + Javascript + Cookies. Ссылки, открывающие новое окно (вкладку), везде подсвечены.

Даже по законам Эрефии этот блог - не СМИ, все сообщения выражают личную точку зрения автора блога и являются оценочными суждениями, при этом любые совпадения мест, имён, названий и действующих лиц далеко не случайны. В блоге нет файлов, способных нанести вред Вашему компьютеру или мобильному устройству. Если Вам не исполнилось 18+, срочно отвалите отсюда, прикиньтесь ветошью и не отсвечивайте покиньте этот блог. Учтите, что читая его, Вы вторгаетесь на мою личную территорию :) Страница статьидалее...
19.01.2038, 15:15 [13372]


Разрабатываем простую переменную-"цветок" на JavaScript

Немного недоделанный простой графический "цветок", но показывающий ещё одну альтернативу - как обернуть "библиотечный" Javascript-объект не в анонимную функцию с инкапсулированным внутрь кодом и не писать класс, ограничившись именованной переменной-обёрткой.

Небольшие синтаксические заморочки в этом случае, думаю, ничему не помеха - зато можно иметь весь скрипт в одной переменной и не вызывать никаких конструкторов для создания объекта.

Ниже показан пример в работе, а следом прикреплён код (без внешних обрамляющих тегов HTML, предполагается кодировка Юникода UTF-8). Страница статьидалее...
25.02.2021, 14:46 [3]


С празднечгом?

С каждым годом как-то всё дебильней выглядит денёк, хорошо, что никто уже и не поздравляет почти, чувство такта, что ли, появилось у нас...

23 февраля 1918 года было опубликовано воззвание СНК от 21 февраля "Социалистическое отечество в опасности!", а также "Воззвание военного главнокомандующего" Крыленко, которое заканчивалось словами:

Все к оружию. Все на защиту революции. Поголовная мобилизация для рытья окопов и высылка окопных отрядов поручается советам с назначением ответственных комиссаров с неограниченными полномочиями для каждого отряда. Настоящий приказ рассылается в качестве инструкции во все советы по всем городам.

В этот же день, даже, скорее, в ночь на 24-е, состоялось заседание ЦК РСДРП (б), на котором был полностью и безоговорочно принят предъявленный германским командованием ультиматум, после чего ВЦИК и СНК РСФСР сообщили об этом германскому правительству.

В ожидании ответа от "партнёров", немцы не стояли без дела, но, прогнав красноармейцев, заняли Псков, который удерживали в оккупации ещё более полугода. Красные драпали так, что только пятки сверкали.

Председатель СНК Ленин опубликовал в "Правде" статью "Мир или война", в которой настаивал на необходимости немедленного заключения мира (вскоре "Брестский мир" и был заключён). А два дня спустя он писал: Страница статьидалее...
23.02.2021, 00:10 [25]


Пять простых макетов сайта из двух колонок одинаковой высоты

Способов, разумеется, можно придумать больше, я включил в статью только те, то успел написать и проверить за пару пар 16 февраля 2021-го.

Макеты реализованы непосредственно как прикреплённые файлы .html в кодировке Юникода UTF-8, пояснения содержатся в тексте файлов, продублирую их здесь в целях лучшей находимости.

Для простоты стили помещены внутри тега <head> документов, в реальном шаблоне их лучше вынести в отдельный стилевой файл, помещённый во вложенную папку, например, как вот здесь. Страница статьидалее...
16.02.2021, 22:58 [39]


Что Вы знаете о маленькой <...> (имя подставить по вкусу)

В этот знаменательный день пожелаем Юному Гению Авангарда быть мудрой как Валерий Борисович,твёрдой как ИдолИще, красивой как Бузова и счастливой как все Феликсы вместе взятые! Пусть радует предков своим безобразным поведением, а поклонников своего таланта - новыми масштабными проектами.)

-- wrote Ув. Алексей

Мне кажется, изрядно вышло, семейная анкета на 10-летие младшей дочери, сочинял, пока добирался в пробках с каторги. Задавать конкретно родственникам, победил я, конечно.

Ответы увидеть легко, если чуть постараться :) Страница статьидалее...
16.02.2021, 22:12 [24]


Мысль

Мне пришла в голову мысль, что часто загробная жизнь начинается именно так - человек продолжает якобы ходить на работу, делать какие-то будничные дела, и лишь постепенно начинает осознавать, что реальность вокруг незаметно, но неуклонно паршивеет, Солнца давным-давно не видно, и вообще, снаружи темнота всё время, тело меняется не в лучшую сторону, окружающие совсем перестают его замечать, а потом пелена внезапно спадает - и он обнаруживает себя в аду, окружённым хохочущими чертями, которые, конечно, никакими знакомцами, прохожими, коллегами или членами семьи никогда не были. Страница статьидалее...
16.02.2021, 21:35 [34]


C++: ещё раз о генерации целых и вещественных чисел в заданном диапазоне значений

Как сделать функции, подобные random_string из этого листинга, "по-старому", без uniform_int_distribution, но с srand и rand?

1. Подключить к проекту заголовки

#include <cstdlib>
#include <ctime>

2. Один раз до генерации последовательностей псевдослучайных чисел выполнить

srand(time(0));

Если делать перед каждым числом (или несколькими числами), при достаточном быстродействии компьютера может получиться как раз одно и то же (одинаковый seed последовательности, соответствующий метке времени, даст одно и то же первое число последовательности).

3. Если нужные случайные целые числа в диапазоне от a до b включительно, то генерацию очередного числа можно выполнить кодом вида

int n = a + rand() % (b - a + 1); 

Если нужны случайные вещественные числа от a до b включительно, то

double d = a + (double)rand() / RAND_MAX * (b - a);

Вот программка для тестирования испытаний, проверенная в консоли Visual Studo 2015. Страница статьидалее...
15.02.2021, 12:31 [31]


В поисках утерянного смысла

Ироничное.

Фаллибиллизм, толерантость, прости Господи, по Попперу, метод подтверждения... Галич сказал обо всём этом куда короче:

Я от тысячи истин, как Байрон,
Вдруг поверю, что истины нет!

Стагнирующие общества отличаются от расширяющихся тем, что вместо смыслов генерируют бессмыслицы.

В норме человек для того так долго и обучается, чтобы успеть сгенерировать новые смыслы, крутанув, когда дойдёт до него очередь, педали вечно ходящего по кругу "прогресса".

Да, я бы сравнил нас с цирковым наездником, катящимся по канату на одноколёсном велосипеде.

Остановиться нельзя, а сорваться - запросто. И есть третье состояние - успеть повиснуть на канате и сучить ногами, хотя велосипед давно валяется внизу на зассанных цирковыми зверями опилках.

Когда упал велосипед? Уже в советское время анекдот об остановившемся поезде, пассажиры которого только делают вид, что едут, был общим местом. Страница статьидалее...
14.02.2021, 17:14 [42]


QT: простой виджет "суммирование стека чисел"

Сделаем виджет как в этой заметке, если в Вашем QT появились какие-то дополнительные шаги при создании проекта - оставляем выбор по умолчанию, нажимая кнопку "Далее".

Здесь сознательно не использовано назначение одного обработчика нескольким кнопкам, программное создание массива кнопок и т.п. приёмы из этой статьи, код максимально облегчен.

По нажатию кнопки "+" добавляем в стек то, что определяется как число в поле ввода, по "-" удаляем, по "=" суммируем числа из стека, по "C" очищаем стек.

Также код показывает следующие типовые моменты: Страница статьидалее...
13.02.2021, 14:11 [35]


Разрабатываем библиотеку progressBar на Javascript

Чисто учебный пример. Небольшая библиотека-фреймворк и сайт о ней.

Здесь "мини-фреймворк" реализован в виде класса Javascript, а не безымянной функцией-обёрткой с объектом внутри. Макет основан на вот этом, только доработан.

Так как работа заведомо "о Javascript", целесообразно вывод меню и заголовков окна делать через него же, это существенно облегчает прописывание в структуре сайта новых страниц или закладок - достаточно вписать ссылку в массив страниц из js/funсtions.js. Для построения выпадающих списков также используется функция на Javascript с именем makeList.

Исходники (документы HTML5 в кодировке Юникода UTF-8) легко увидеть со страниц демо-версии (щёлкнуть правой кнопкой мыши на свободном месте страницы и выбрать пункт меню "Исходный код страницы", "Просмотреть исходный код" и т.п., название пункта зависит от браузера).

Структура "сайта о фреймворке" в общем случае может такой и быть - "скачать" и всё главное на основной странице, документация по пользовательским методам, примеры работы. Если рассматривать как это задание на написание собственного фреймворка или описание существующего, подойдут примерно такие план и расчасовка работ, для обучающихся, конечно, а не специалистов (время указано в академических часах):

Выбор и обоснование темы - 2 часа;
Разработка макета и стиля сайта - 4 часа;
Разработка логотипа и графики - 2 часа;
Разработка или формирование списка методов фреймворка - 4 часа;
Написание или изучение кода методов фреймворка - 6 часов;
Написание документации к фреймворку - 6 часов;
Написание демо-кода и форм для работы с фреймворком - 6 часов;
Отладка и исправление ошибок - 2 часа.
Итого: 32 часа.

Вот скриншот начала главной страницы и ссылка на сайт в работе. Страница статьидалее...
13.02.2021, 11:34 [56]


startsWith и endsWith на Javascript
Часть браузеров не поддерживает простые методы для определения вхождения строки в начало или конец другой строки (startsWith, endsWith).

Решение есть в самих доках по ссылкам, но в большинстве случаев достаточно заметно более простого кода: Страница статьидалее...
13.02.2021, 11:08 [28]


Как проверить валидность строки с кодом цвета на Javascript?

Способов можно придумать много, самым простым мне кажется показанный ниже, правда, связанный с созданием элемента в структуре DOM, но тут остаётся надеяться, что миллионы строк нам создавать не надо, а "сборщик мусора" сработает как надо.

Плюс не нужно писать разборы многочисленных форматов представления цвета, включая обозначения словом. Страница статьидалее...
13.02.2021, 10:40 [33]


Javascript: как запустить код по таймеру из метода класса

Представим, что хотим запускать функцию класса Javascript по таймеру с помощью setTimeout или setInterval.

Увы, казалось бы, естественное

this.timerId = setTimeout(function () { this.doTimer (); }, this.timeInterval);

написанное в другом методе класса, к успеху не приведёт, лишь будем получать с периодом таймера ошибку

Uncaught TypeError: this.doTimer is not a function

Такие вещи способны свести с ума, если не знать, что помогает простое "клонирование" this:

let that = this;  //Без такого клонирования ссылки не работает setTimeout из класса
this.timerId = setTimeout(function () { that.doTimer (); }, this.timeInterval);

Ссылки на свойства, такие как this.timeInterval, можно оставить без изменений.

Обратите внимание, что приведённый ниже код (документ HTML без обрамления, кодировка Юникода UTF-8) ровно 100 шагов делать отнюдь не обязан, с измерениями малых интервалов времени у JS тоже бывают проблемы. К тому же, когда вкладка перестаёт быть активной, современные браузеры практически перестают выполнять в ней код, вызываемый по таймеру. Страница статьидалее...
10.02.2021, 19:19 [40]


CSS: как выровнять строчку текста во вложенном элементе по центру

Если внутрь блока, например, абзаца <p> или раздела <div>, вложен ещё один элемент и при этом он показан "как рисунок", то есть, с display: inline-block;, а мы хотим во вложенном блоке чего-нибудь написать по центру.

Нам достаточно, чтобы работало для однострочных элементов и возиться с хитрым позиционированием не хочется. Вот что вышло:

Пример прогресс-бара 50% внутри абзаца

И сама разметка со стилем: Страница статьидалее...
10.02.2021, 12:04 [44]


Addslashes всё ещё нужна...

Несмотря на то, что все проблемы с кавычками и слешами в PHP давно не актуальны, если мы формируем на стороне сервера контент, например, форму для добавления комментариев, а потом подгружаем его через Javascript в элемент <div> с идентификатором id="sform" кодом вида

 echo '
 <script>
 window.addEventListener("load", function() { 
  document.getElementById("sform").innerHTML = \''.$str.'\'; 
 });
 </script>
 <noscript>(...)</noscript>'."\n";

то переменную PHP $str всё равно нужно обрабатывать старенькой функцией PHP - Страница статьидалее...
07.02.2021, 03:22 [46]


[1-15] [16-30] ... [2626-2640] [2641-2653]