Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр
Уникальная игра, объединяющая популярные механики Match3 и пошаговые бои!

Магический мир

Мидкорные, Ролевые, Три в ряд

Играть

Топ прошлой недели

  • AlexKud AlexKud 38 постов
  • SergeyKorsun SergeyKorsun 12 постов
  • SupportHuaport SupportHuaport 5 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня

Javascript + Jquery

С этим тегом используют

Программирование IT HTML IT юмор Программист Frontend CSS Все
37 постов сначала свежее
808
JavaSrcipt
JavaSrcipt
1 год назад

Нерассказанная история веб-разработки⁠⁠

  • 1990: HTML придумали

  • 1994: CSS придумали, чтобы пофиксить HTML

  • 1995: JS придумали, чтобы пофиксить HTML/CSS

  • 2006: jQuery придумали, чтобы пофиксить JS

  • 2010: AngularJS придумали, чтобы пофиксить jQuery

  • 2013: React придумали, чтобы пофиксить AngularJS

  • 2014: Vue придумали, чтобы пофиксить React & Angular

  • 2016: Angular 2 придумали, чтобы пофиксить AngularJS & React

  • 2019: Svelte 3 придумали, чтобы пофиксить React, Angular, Vue

  • 2019: React hooks придумали, чтобы пофиксить React

  • 2020: Vue 3 придумали, чтобы пофиксить React hooks

  • 2020: Solid придумали, чтобы пофиксить React, Angular, Svelte, Vue

  • 2020: HTMX 1.0 придумали, чтобы пофиксить React, Angular, Svelte, Vue, Solid

  • 2021: React Suspense придумали, чтобы пофиксить React, снова

  • 2023: Svelte Runes придумали, чтобы пофиксить Svelte

  • 2024: jQuery до сих пор используется на 75% сайтов

Программирование Веб-разработка HTML Javascript CSS Jquery Angularjs Vue React IT юмор Текст
339
23
DELETED
2 года назад
Лига программистов

Самый большой проект на бесплатной cms⁠⁠

Итак, меня сделали админом этого сообщества :) К сожалению, постов тут нет, так что модерировать особо нечего. Старые посты тоже модерировать уже нельзя :)

Попробую исправить ситуацию :) Напишу пост сам и забаню кого-нибудь в комментариях :)

Насколько нелепо большие проекты вы писали на простых бесплатных cms? В моей практике, присутствует интернет магазин с собственным движком и практически годом разработки на wordpress и крупный проект в сфере телекома ( https://irt24.ru/ ).

Проект в сфере телекома, продажа интернет и ТВ тарифов, по сути сайт посредник(диллер) продающий тарифы Ростелекома/МТС и прочих через свой функционал.

На старте функционал выглядел не очень большим, на пару месяцев работы, подумаешь парочка тарифов и не такое делали. Максимум 6-8 месяцев, хотя сроки я не взялся сразу точно назвать.

На практике оказалось, что количество параметров редактируемых у этих тарифов физически в админке выглядит как простыня 1000px на 9000px, это сотни параметров различающихся в зависимости от группы тарифов и обладающие сложными взаимосвязями между собой.

Там где на сайте скромный каталог из четырех разделов, в админке скрыто ещё 10-к каталогов взаимосвязанных друг с другом. Тарифы телевидения содержат каналы, каналы распределяются по пакетам каналов, делятся по тематикам итд.

Стоит подметить, админка wordpress без особых проблем справилась с подобной загрузкой, каталоги весьма удобно распределились в меню, параметры редактирования тарифа органично распределись на всем доступном пространстве экрана администратора.

Один экран, с настройками роутеров(подобные экраны ещё два вверх, несколько вниз):

Самый большой проект на бесплатной cms Программирование, Телекоммуникации, Wordpress, PHP, Javascript, Jquery, CSS, HTML, IT, Длиннопост

На самом сайте, разумеется фунционал тоже реализовывался без лишней скромности и с максимальным размахом. Беглый просмотр функционала Ростелекома и МТС по тематике показал крайнюю их узость и отсутствие массы ценных и необходимых пользователю функций.

Зато данные функции в избытке нашлись на американских площадках, откуда и начали щедро заимствоваться, попутно максимально расширяясь и усложняясь.

Так родились карточки генерируемые вплоть до запятой под каждый тариф и даже в мелочах редактируемые через админку, умная корзина позволяющая детально настроить все основные и дополнительные опции для тарифа, разумеется отдельные страницы для каждого тарифа позволяющие сделать тоже самое +дающие развернутое описание опций.

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

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

То есть, если безлимитной мобильной связи среди тарифов со скоростью интернета 500 мб/с нет, то данная опция становится недоступной и мы показываем подсказку почему так произошло.

Самый большой проект на бесплатной cms Программирование, Телекоммуникации, Wordpress, PHP, Javascript, Jquery, CSS, HTML, IT, Длиннопост

Впрочем, выше сказанное указывает только на фильтр. Где же каталог? Разумеется, наш фильтр должен уметь переключаться между категориями каталога, причем проверяя сможет ли он это сделать с уже выбранными опциями.

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

Так же, никогда нельзя забывать про мобильные устройства, все должно работать на любом смартфоне/планшете/умном холодильнике(кто знает как жизнь повернется?)

И так, тарифы подобраны, дальше нужно их сравнить. Здесь нужно реализовать функционал сравнения по каждой опции и от щедрой души разрешить сравнивать между собой даже тариф только с интернетом, против тарифа только с ТВ. Вдруг появятся желающие(ценители).

В целом, реализация подобных монстров в одиночку на WP, это довольно спорная идея. Хотя вполне возможно, структура кода тоже получается максимально простой.

Чистый php, общение с базой данных через базовый функционал WP.

Jquery и парочка простых библиотек.

Файлы в коде изолированы по модулям, модуль сравнение содержит все свои стили, скрипты и файлы php шаблонов. То есть, практически автономен, имеет свой css и свой js, не подгружаемые другими модулями. Заметных сложностей с поиском кода не было :)

Показать полностью 2
[моё] Программирование Телекоммуникации Wordpress PHP Javascript Jquery CSS HTML IT Длиннопост
39
184
KuruMapuru
KuruMapuru
2 года назад
Web-технологии

Ответ на пост «CSS и авторские права»⁠⁠1

Кому интересно - вот код на jQuery, который вставляет мягкие переносы в русские слова и позволяет тексту, выключенному по ширине, быть более плотным и визуально приятным, особенно при малой ширине блока. Легко перепиливается на чистый JS:


$.fn.hyphenate = function() {
var RusA = "[абвгдеёжзийклмнопрстуфхцчшщъыьэюя]";
var RusV = "[аеёиоуыэю\я]";
var RusN = "[бвгджзклмнпрстфхцчшщ]";
var RusX = "[йъь]";
//var Hyphen = "\xAD";
var Hyphen = "­";
var re1 = new RegExp("("+RusX+")("+RusA+RusA+")","ig");
var re2 = new RegExp("("+RusV+")("+RusV+RusA+")","ig");
var re3 = new RegExp("("+RusV+RusN+")("+RusN+RusV+")","ig");
var re4 = new RegExp("("+RusN+RusV+")("+RusN+RusV+")","ig");
var re5 = new RegExp("("+RusV+RusN+")("+RusN+RusN+RusV+")","ig");
var re6 = new RegExp("("+RusV+RusN+RusN+")("+RusN+RusN+RusV+")","ig");
//console.log(this);
this.each(function(){
var text=$(this).html();
text = text.replace(re1, "$1"+Hyphen+"$2");
text = text.replace(re2, "$1"+Hyphen+"$2");
text = text.replace(re3, "$1"+Hyphen+"$2");
text = text.replace(re4, "$1"+Hyphen+"$2");
text = text.replace(re5, "$1"+Hyphen+"$2");
text = text.replace(re6, "$1"+Hyphen+"$2");
$(this).html(text);
});
};
Показать полностью
CSS Javascript Jquery Перенос HTML Ответ на пост Текст
18
3
analcount
2 года назад
Лига программистов

Мечта о своей игре⁠⁠

Добрый вечер. Не буду томить и сразу начну.

Половину своей жизни мечтаю о своей игре,  а именно, собственной Guitar Hero, с блэкджеком и песнями. Простую, браузерную, в которую можно играть как на телефоне, так и на ПК.

В бородатые времена, было что-то подобное, называлось Flash Guitar Hero. Написанная на флэше, в которую можно было играть на сайте, либо скачать себе на ПК и играть без интернета.


Казалось, я уже дорос до того, что бы написать игру. Но, спойлер - нет, не дорос.

И я не программист, кстати.


Продумав механику игры, как она должна работать, я сел себя мучать.

Есть midi-файл, распарсив его, я получаю очень много информации:

Сами ноты:

[

{

"durationTicks": 1, //длинна ноты

"midi": 96,  //струна, на которой находится нота

"time": 2.016804  //секунда, на которой звучит нота

}, {

"durationTicks": 1,

"midi": 97,

"time": 2.016804

},

...

]

BPM:

[{

"bpm": 119, //bpm, собственно

"ticks": 0  //тик (он потом конвертируется в секунду), на которой меняется bpm

},

{

"bpm": 99,

"ticks": 768

},

...

]


Ну а дальше, дело за малым, я решил выбрать JQuery,  так как немного понимаю его.

var notesJSON = "notes.json";

var bpmJSON = "bpm.json";


$.getJSON(notesJSON, {format: "json"}).done(function(data) {

$.each(data, function(index,value) {

var TimeToPX = value['time']*762+50; //конвертирую секунды в пиксели

var height = parseInt(value['durationTicks'])+parseInt(109);

$('.notes').append('<div class="note"></div>');

var notesHeight = $('.notes .note:last-child').attr('data-px');

$('.notes').css({'height': parseInt(notesHeight) + parseInt(50)+'px'});

});

});


Поясняю:

var TimeToPX //конвертирую секунды в пиксели (шизик, да)

var height  //делаю высоту у нот


$.getJSON(bpmJSON, {format: "json"}).done(function(data) {

$.each(data, function(index,value) {

var ppq = 192;

var bpm = value['bpm'];

var bpmppq = bpm * ppq / 60;

var ticks = value['ticks'];

var speed = (289400 / bpm) *100;

var bpmtime = ticks / bpmppq;

song.addEventListener('timeupdate', function () {

var songStart = parseFloat(song.currentTime);

if (songStart > bpmtime) {

var notesHeight = $('.notes .note:last-child').attr('data-px');

var translate = parseInt(notesHeight) + parseInt(50);

$('.notes').animate({bottom: '-'+translate+'px'}, speed, 'linear');

}

}, false);

});

});


Тут все понятно. Все переменные для той самой конвертации тиков в секунды.

Переменная speed "прокручивает" блок с нотами в низ с той скоростью, которую мы распарсили из bpm.json. И которая меняется когда надо.


Так а что в итоге? А то, что, как я понимаю, JQuery не подходит для этого, на андроиде жутко все тормозит, как будто я запустил ПК-ашный Киберпанк на Редми 6. Но вот на Айосе тянет все отлично.

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

Если есть энтузиасты, помогите, пожалуйста. Или за донат на пиво с чипсонами. Можете себе забрать игру в конечном счете и монетизировать, я не против.

А можем вообще вместе ее доделать.


Живой пример того, что я сделал - http://z33376pn.beget.tech/gh/ - играть можно только на телефоне. Нажав на play в левом верхнем углу. Но посмотреть, как движутся ноты, можно на любом устройстве.


Пример другой игры на JS без тормозов:

https://github.com/jyschwrtz/JS-Hero


А вот пример того, что хочется получить в идеале:

https://github.com/henryzt/Rhythm-Plus-Music-Game

Показать полностью
[моё] Guitar Hero Jquery Javascript Gamedev Инди игра Длиннопост Текст
4
544
DELETED
2 года назад
IT-юмор

Наконец-то пригодилась⁠⁠

Наконец-то пригодилась Javascript, Jquery, Юмор, Тонкий юмор, Странный юмор
Показать полностью 1
[моё] Javascript Jquery Юмор Тонкий юмор Странный юмор
51
11
DELETED
3 года назад

Водятся ли работодатели для программистов на пикабу?⁠⁠

Возможно кому-то нужны fullstack js/php разработчики?


Заканчиваю проект и в принципе полностью свободен. Ранг неуверенный в себе джуниор, 12 лет опыта. Немного знаком с js/jquery/php/html/css, сталкивался с дизайном.


Делал такие штуки как: https://irt24.ru/ , фильтр тут интересно выглядит https://irt24.ru/uslugi/all-together/ и сравнение (его как раз заканчиваю...), плагин магазинов на WP https://argon-studio.ru/portfolio/stroiPostavka  (если ссылки нельзя, извини модератор, тогда могу прислать при личной переписке).


Сейчас размышляю на тему в какую сторону дальше развиваться и думаю обучаться реакту или углубляться в backend в сторону Laravel/Симфони.


Будет очень удачно, если кому требуются программисты на WP, возможно сайты нужно поддерживать. Или готовы взять удаленно новичка на один из фреймворков(реакт, ларавел, симфони итп), терпеть его и отвечать на наивные вопросы... Вдруг?


Связь +7 909 217 34 33 (whatsapp), скайп sargonblack1


В связи с обоснованной критикой, "пост должен быть смешным или интересным", добавляю картинку. И интересный факт, "Первоначально Google назывался BACKRUB" :)

Водятся ли работодатели для программистов на пикабу? Программирование, Программист, Вакансии, PHP, Javascript, Jquery, Wordpress, Текст
Показать полностью 1
[моё] Программирование Программист Вакансии PHP Javascript Jquery Wordpress Текст
22
43
DELETED
3 года назад
IT-юмор

Хорошие библиотеки⁠⁠

Хорошие библиотеки
Javascript Jquery Frontend Игра в кальмара (сериал)
32
67
DELETED
3 года назад
IT-юмор

JQuery developers⁠⁠

JQuery developers
Jquery Javascript Мемы IT IT юмор Framework
23
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии