ArbNet

ArbNet
Рейтинг
124
Регистрация
27.10.2019
Программист самоучка
Snake800 #:
Классика MVC же ж. Короче, никаких on*="" в <коде />. Html вообше не должен знать, что с ним будет происходить после того, как он придёт в браузер.

Во фронте MVC не катит, в бэке да такой подход удобен и то есть случаи когда приходится совмещать разметку и код.

А вот в фронте разметка и код не разделимы, можно конечно писать модули, компоненты и прочее, но в основном нужно что-то сделать быстро и чтобы потом можно так же быстро разобраться и поправить при необходимости и поэтому разделение тут только будет во вред. Да если владелец сайта сам программист и может разобраться, найти что где находится в каких файлах и прочее, то не вопрос, но когда человек мало что понимает, то ему будет удобнее в одном месте где-то что-то подправить по инструкции. Именно поэтому я и стараюсь делать по другому. Глядя на существующие фреймворки и инструменты как там напридумано всяких объектов в которых должны быть некие параметры и всё это нужно знать, то для обывателя это тёмный лес, да и с доработкой на таких инструментах позже будут проблемы..  ИМХО

nikki4 #:
Для этого есть множество фреймворков, например antd, mui из наиболее крупных 

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

Snake800 #:

Не. Лучше через data-, кмк. Вернее так: событие должен ловить некий css-селектор (в т.ч. через data-*). А что делать с этим элементом, сотдержится в дата-атрибутах. Я так делаю. Правда я в js далеко не гуру и, возможно, вообще правильнее dom- элементы заворачивать в какую-то js-обёртку.

Я пару лет назад тоже так рассуждал и даже делал обработчики навешивая на элементы где data-do="указание какого-то действия" функций обработчиков тех или иных действий. Потом стал писать разные модули и придумывание разных функций каждый раз для каки-то действий это только хуже и навешивание событий это только дополнительная путаница и тд. В html предусмотрены атрибуты для обработки событий onclik и др. on* к тому же есть возможность создания своих событий через MutationObserver, создав модуль для обработки событий наблюдений за элементами просто прописываешь как обычно своё событие on*** с указанием функции обработки и всё. А для ускорения разработки в других модулях подготавливаешь функции для изменения, работы с элементами и др. указывая которые в обработчиках событий, так намного понятнее и проще.

webinfo #:

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

Как для программиста это да, пофиг, можно как угодно сделать, главное чтобы работало.

Я же хочу чтобы и не программисты могли без знаний JS легко создавать разные динамические формы обрабатываемые скриптом и тд. Короче решил через события делать, разработчику не трудно прописать атрибут события, а пользователю без знаний JS надо просто скопировать готовую разметку и всё, так будет удобно для всех ИМХО

webinfo #:

Так нагляднее, ИМХО. И это не обязательно огромная кнопка, можно маленькую иконку ставить.

Ну это не ответ на мой вопрос: навешивать события скриптом или делать прописыванием их в элементе через атрибуты on*

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

webinfo #:

Правильнее - вставлять кнопку "Редактировать".

Я так делал по началу, создавал элемент input в его value значение записи и тд. коряво выглядит и глупо так делать если можно просто указать contentEditable="true". Сейчас в js возможностей достаточно чтобы сделать намного лучше, с кнопкой это по моему уже не актуально(прошлый век).

Или может я не правильно понял. Зачем вообще кнопка "Редактировать"? Да, если одно поле это в принципе приемлемо, но если таблица, у каждого значения кнопку, нафига..

Gans Gauss #:

Так разве про рубль могут только россияне вести диалог? 

Можете обсуждать сколько угодно, только это ничего не изменит 😎

ЗЫ. В мире финансов как ни странно, но физические законы тоже действуют. Например если кинуть мячик в стену, то он от неё отскакивает, так же и тренд меняется.

vitaliy11 #:
Но там же кажется есть из чего выделять (заначку в 300 оставили)

Эта заначка наша. А если пиндосы посмеют присвоить или отдать кому-то то им же хуже будет и они это понимают.

Vladimir SEO #:
перед 5кой надо единичку дорисовать - тогда поверим

Можете не верить, время покажет 😎

Sultan :

Всем Здравствуйте! Долго думал как объяснить свою мысль, попытаюсь объяснить помогите пожалуйста.

Есть js код который изменит размер элемент сайта, но при срабатывания js код , изменить только один элемент, остальный остаётся так как есть, таких элемент в страница 10 штук, как сделать так чтоб js код срабатывал для всей (10 штук) определенный элемент сайта?

Заранее спасибо!

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

Это делается намного проще:

К тем элементам которые хотите изменить добавьте признак, атрибут data- для выборки

<div data-i="elementsayta"></div>

Затем выбираете эти элементы и применяете к ним функцию:

<script>
let els=document.querySelectorAll('[data-i="elementsayta"]');
els.forEach(function(elt){
  elt.style.height='500px'
  elt.style.minHeight='500px'
})
</script>
Всего: 1882