Персональный сайт Дмитрия Журавлева

Связь: dmitriyzhuravlev@yandex.ru

Здесь я собираю скрипты, которые сам написал на JavaScript. Разные полезности.

Зачем это мне нужно? Прокачиваю свой скилл.

Также рекомендую порешать мои онлайн-задачи по JavaScript (необходимый уровень знаний - средний и выше).
Комментариев нет

В целях изучения вебсокетов написал свой онлайн-чат. Использовал npm-пакет ws, т.к. у ноды намеренно нет встроенной поддержки вебсокетов.
Залил на гитхаб:
https://github.com/rudimadima/simple-websocket-chat

Скриншот чата:


Вот линк - можно зайти, початиться (бэк на Heroku залил).

Кстати, у ws ноль зависимостей, люблю такой подход.
Вебсокеты - обалденная технология, очень понравилась :)
Комментариев нет

Написал скроллер для сайта: "модная" перемотка по вертикали большими блоками, размером с окно браузера.

Т.е. такое листание страниц целиком, как на некоторых лендингах.

Вот пример работы.
Откройте лучше на мобилке, понятнее будет о чем речь. Для десктопов, имхо, это лишнее, но тут каждый сам решает.

Залил на гитхаб, если кому удобнее оттуда тянуть:
https://github.com/rudimadima/full-page-slider
Комментариев нет

Мой Pacman :)
За аналог взял Пакмена с Денди.

Поиграть в Пакмена...

Комментариев нет

Ни один современный браузер не даст запустить виндовый *.exe файл с помощью браузерного JS. Не разрешит даже содержимое файла прочитать с жёсткого диска без разрешения пользователя. Иначе бы любой кулкацкер лазил по чужим дискам при заходе на вредоносный сайт.

Но если очень хочется, то можно всё сделать. :) Надо пошаманить с помощью node.js.
Вариант будет удобен, когда есть парк ПК в одной организации.

Ставим на все компы node.js, ставим expressjs, делаем автостарт node.js при старте винды.

Создаём index.js:
const express = require('express');
const app = express();
const port = 5555;
const child_process = require('child_process');

app.get('/run/myscript.bat/', (req, res) => {
	res.send('Running myscript.bat');

	child_process.exec('myscript.bat', function(err, data) {  
			console.log(err);
			console.log(data.toString());                       
	});
});

app.listen(port, () => {
	console.log(`Listening at http://localhost:${port}`);
});

И создаём myscript.bat:
c:\Windows\System32\calc.exe
Для примера тут используется виндовый калькулятор.

Далее нужно всего лишь открыть в браузере адрес:
http://localhost:5555/run/myscript.bat/
и калькулятор запустится.

Соответственно нужен просто сайт/html-страница со ссылками на нужный урл. Кликаем ссылку - делаются нужные дела на компе (запускаются приложения, чистятся папки, выключается ПК и пр.).
Ну или автоматически во фреймах открывать/закрывать нужные адреса, когда требуется, т.е. вообще контроль будет со стороны сервера. В общем, простор для фантазии.
Комментариев нет

У меня было написано на Реакте приложение Тест по фронтенду.
Теперь написал аналогичное приложение на Vue.

Vue мне нравится намного больше Реакта, с ним побыстрее работается и всё как-то удобнее. Но это лишь моё скромное мнение.

Вот тут исходиники:
/js_files/vue/frontend_quiz/src.zip
Комментариев нет

В целях изучения Vue написал на нём SPA Ежедневник. Прикрутил Vue Router и Vuex.

Сам Vue мне очень понравился, как-то приятнее Реакта, душевнее что ли :)

Вебпак не использовал, так и выгрузил всё с нативными ES6-импортами, поэтому там куча файлов.
Комментариев нет

Написал своё первое расширение для Firefox.

Долгое время моим самым любимым браузером была старая Opera, которая на движке Presto. Её последняя версия - Opera 12.18 - вышла аж в феврале 2016 года, т.е. она уже безнадёжно устарела. В старой Опере было невероятное количество фишек, которые до сих пор не реализовали современные браузеры.

Одна из таких возможностей - это переключение вкладок влево-вправо обычными клавишами 1 и 2. Так умеет делать очень хороший хромобраузер Вивальди, но это, повторюсь, хромобразуер со всеми вытекающими недоделками. Например, любой хромобраузер не имеет переключаться на другую вкладку, если на странице появился запрос HTTP-аутентификации.

У Firefox тоже масса хороших фишек, но его надо дорабатывать расширениями, чтобы приблизить его к возможностям Opera Presto, вышедшей много лет назад.

Среди массы расширений на addons.mozilla.org я так и не нашёл рабочего расширения, которое бы могло переключать страницы одиночными кнопками 1 и 2. Так что пришлось писать самому, а это интересный опыт, надо сказать.

Написал, отправил на модерацию, одобрили, вот ссылка: https://addons.mozilla.org/ru/firefox/addon/1-2-key-for-tab-switch/.
Или можно напрямую с моего сайта скачать: https://dmitriyzhuravlev.ru/js_files/firefox_ext/{91b52371-953d-4479-86e2-028720f293c1}.xpi

Читать далее...

Комментариев нет

Хоть React я и недолюбливаю, но в связке с Redux с ним управляться намного удобнее.
Написал тест-викторину из 10 вопросов по фронтенду. Можете пройти:
/js_files/react/frontend_quiz/

Вот тут исходиники с JSX:
/js_files/react/frontend_quiz/src.zip
Комментариев нет

Написал свои собственные версии некоторых компонентов, которые присутствуют в бутстрапе. Мне Bootstrap кажется излишним, хотя многим он нравится.
Важное отличие моих компонентов: они работают в браузерах-динозаврах - Internet Explorer 11 и Opera 12.

Читать далее...

Комментариев нет

Страницы: 1 2 3 4