Ответ на пост «Школьное»12

Серия ИИ и программирование

Мне выражение "не работает, переделай" сообщил компьютер. На одном и том же коде!!!


Скачал из интернета шаблон HTML+CSS+JS, внес правки и во время тестов вижу, что отваливается шапка страницы. Но я слишком много правок внес и не знаю, какая из них ломающая. Мало ли, где-то зависимость от класса следующего блока или от фазы Луны.


Решил вносить частями, чтобы определить где и что именно ломается, т.к. визуально неработающие и работающие места -- идентичны! Мало ли как в Python пробелы и табуляция из-за копипаста перемешаются, а скрипт не работает. Выглядят то идентично! Если не включать отображение подобных символов как-то иначе.


Беру исходный шаблон, копирую рядом и... Шаблон перестает работать!


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


В итоге, на HTML+CSS написал простенькую консоль внутри блока типа:

<p>Переменная А = <i id="idA"></i><p>

UPD: Копипаст наше все отсюда:

После заголовка: Pure-CSS lightbox

https://developer.mozilla.org/ru/docs/Web/CSS/:target

(с помощью CSS зафиксирован всегда сверху, всегда по центру, фон полупрозрачный, добавил z-index)


В JS добавил обновление переменных внутрь подозрительной функции:

var el = document.getElementById('idA');

el.textContent = A;

соблюдая все регистры символов, ибо знаю, что разные языки по разному относятся к регистрам, где-то кладут болт на регистр, все работает, а где-то требуют точное соблюдение регистра.



Открываю оба документа -- из исходного каталога и из скопированного. И произвожу манипуляции:

баг с пропаданием шапки страницы работает только когда страница загружена с шириной больше 992px, потом немного прокручиваю вниз до исчезновения шапки (она становится закрепленной сверху), после чего уменьшаю ширину браузера. При прокрутке в начало шапка остается со свойством "display:none" и не видна.


Но почему в оригинальной странице работает все нормально, а в копии этой же страницы -- нет? КОПИЯ!!! Т.е. вся разница -- это только другое название папки.


С помощью jQuery реализована нужная функция в шаблоне (не моя):

windows.on('scroll', function () {

var scroll = windows.scrollTop();

var headerHeight = header.height();

if (screenSize >= 992) {

if (scroll < headerHeight) {

header.removeClass('display-none');

} else {

header.addClass('display-none');


Перед этим и после есть код. Включая закрывающие скобки.

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


Соответственно, если загрузить в третьей вкладке оригинальную страницу, то и на ней баг стал воспроизводиться!


Обнаружив баг с неверной высотой элемента стал думать как порешать и тот. Чтобы правильно запоминалась высота элемента. Но потом -- а не пофиг ли? В самом верху значение scroll будет равно нулю. Значит, нужно либо второй элемент увеличить на единицу, если он занулится, либо поменять оператор сравнения < на <=

Т.е. будет:

if (scroll <= headerHeight+1)

(применил оба исправления, хуже не будет, я на это надеюсь, от JS всего можно ожидать)


Кучу времени убил на то, чтобы узнать, что нужно было добавить или знак равенства, или поставить +1.


Хуже только узнать, что Python-скрипт не работает потому, что где-то отступы отформатированы пробелами, а где-то -- табами. Например, при копипасте, в котором пробелы, когда сам используешь табы...

Пробел -- это "ноль", таб -- это "единица", вот тебе машинный код, иди ищи баги..

P.S. я JS не знаю... Просто думаю такой: ну, вроде, он похож на язык программирования, который я знаю...

IT-юмор

7.1K постов53.2K подписчиков

Правила сообщества

Не публикуем посты:
1) с большим количеством мата
2) с просьбами о помощи
3) не относящиеся к IT-юмору

Вы смотрите срез комментариев. Показать все
3
Автор поста оценил этот комментарий
JQuery? ты наркоман чтоль или из 2007 года?
раскрыть ветку (12)
1
Автор поста оценил этот комментарий
А ты только на основании видосиков типа "тренды верстки в 2022" такие комментарии пишешь? Или не имеешь реальное понимание, что обычные шаблоны, для которых не пишут свой уникальный ui, впринципе используют бутстрап, к которому по умолчанию нужно подключать jquery. И скрипты пишут так же на нем. Потому что в том самом 2007 научились им пользоваться. К тому же всякие недокомпании, которые занимаются лендингами, до сих пор требуют от верстальщиков знаний jquery. Зачем? Потому что знать должен, но использовать мы конечно не будем?? Наркоман из 2007
раскрыть ветку (3)
3
Автор поста оценил этот комментарий
Я пишу про в целом, а не про какие-то конкретные случаи. У нас в проекте тоже есть классовые компоненты, jsx и даже jquery знать это неплохо, но делать на нем что-то новое в 22 уже году - такое себе.
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

но делать на нем что-то новое в 22 уже году

А кто говорил делать новое? Новое -- писать с нуля.

Использовалось старое и готовое...

0
Автор поста оценил этот комментарий
Для "обычных лендосиков" jquery используют скорее чисто по привычке. Практически все необходимое браузеры поддерживают нативно, и даже в бутстрапе ещё в 20 году от jquery отказались.
https://blog.getbootstrap.com/2020/06/16/bootstrap-5-alpha/
Автор поста оценил этот комментарий

Вообще в этом не разбираюсь, скачал просто красивый шаблон HTML+CSS, я хотел бы и без JS обойтись, но увы, до сих пор куча элементов HTML5 реализованы старыми "дедовскими" способами через JS...

Т.к. я пишу бэкенд, не full-stack.
раскрыть ветку (7)
2
Автор поста оценил этот комментарий
Так а смысл тогда копаться в кишках? Ставь какой MUI с реактом - там все проще в разы. Готовые есть компоненты, собираешь как из конструктора
раскрыть ветку (3)
0
Автор поста оценил этот комментарий

спасибо, в будущих проектах посмотрю как его применять.

Все же я искал именно готовые шаблоны, а не фреймворки. Главное требование -- красота.

Соответственно, смотрел сайты уровня 100500 бесплатных шаблонов HTML/CSS.


Все же на фреймворки нужно тратить время, на их изучения, когда проект должен был сдан вчера и мне за него не заплатят, да и выполнятся он должен чуть ли не на системе с Windows XP (!) или Windows 7. Для такого дела и старые технологии использовать не зазорно...

раскрыть ветку (2)
0
Автор поста оценил этот комментарий
Так у тебя фронтовая часть исполняется по сути не в ос, а в браузере. Там оптимизируют не под ос, а под браузер.
+ если у тебя что-то простое в питоне же в джанго или что у тебя там наверняка есть возможность делать что-то типа сервер-сайд рендеринга с минимальным количеством JS.
То есть ты берешь хтмл (скорее всего даже есть какой-то DSL а не чисты хтмл) а на js напишешь какой-то минимальный интерактив (и то если понадобится)
раскрыть ветку (1)
0
Автор поста оценил этот комментарий
исполняется по сути не в ос, а в браузере

Только вот в браузере лагает ютуб видео 720p 60fps. Да и даже прогрузка 144p -- гарантированные лаги на первые 15 секунд, пока грузится, вплоть до зависания вкладки.

Вкладки Хабра также дико лагают при прокрутке.

на js напишешь какой-то минимальный интерактив

Не хочу в принципе касаться фронта в данном проекте. Если был бы выбор, вообще бы не коснулся данного проекта...

Поэтому юзаю только готовые куски. Могу поправить только немного, если что-то отвалится, но не более, без написания с нуля.

Автор поста оценил этот комментарий

посмотрел новые фреймворки JS. Они юзают npm, мой комп из 2007 года такое может не потянуть, особенно всякие сборки и т.д. Оперативы мало, DDR2, да и диск HDD (в 2022 году!). Те пакеты npm будут целую вечность собираться и устанавливаться, тогда как мне уже надо сдавать проект...


Хотя по местным меркам еще неплохой комп, ибо видел и работающие третьи пентиумы, да и другие ПК, которые максимум Windows XP потянут. В 2021 году.

На тот же 120 Гб SSD не каждый готов отдавать половину или треть от зарплаты.

раскрыть ветку (2)
2
Автор поста оценил этот комментарий

На тот же 120 Гб SSD не каждый готов отдавать половину или треть от зарплаты
Какую половину,  какую треть, вы о чём вообще? Что за зарплаты такие?
120 sata в DNS две с половиной тысячи рублей стоит, и это WD, а какой-нибудь небрендовый китаец вообще полторы.

https://www.dns-shop.ru/product/cf2c1832e6bf3330/120-gb-25-s...
раскрыть ветку (1)
Автор поста оценил этот комментарий

120 sata в DNS две с половиной тысячи рублей стоит, и это WD

Треть от зарплаты = 2,5 тыс рублей.

Значит, полная зарплата 2,5*3 = 7,5 тыс руб.

Минимальная зарплата с апреля 2021 года составляет 7,4 тыс российских руб. Не РФ. Запад Ростовской области.

Причем до апреля 2021 года зарплаты были еще ниже!


Мало того, у нас нет магазинов российского DNS, ибо это зарубежный магазин. И местные дают наценку в районе 20%, т.е. 2,5 тыс руб превращаются в 3 тыс рублей.
До апреля 2021 минимальная зарплата была где-то в районе 6 тыс руб, как раз 3 тыс рублей -- это половина! До апреля -- это январь, февраль, март 2021 года.


UPD: еще и приказ о повышении минимальной зарплаты был, вроде, задним числом. Т.е. указ о повышении с 1 апреля 2021 года был подписан 30 апреля 2021 года... Хотя о чем это я? Студентам о повышении стипении на пару сотен рублей с 1 сентября 2021 года указ был подписан где-то в декабре 2021 года...


По российскому ТВ постоянно про этот регион рассказывают...

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества