Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   jquery - есть ли смысл? (https://javascript.ru/forum/jquery/16457-jquery-est-li-smysl.html)

Riim 14.04.2011 12:45

Цитата:

Сообщение от Kolyaj
Давайте с другой стороны: а зачем вы его используете?

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

Kolyaj 14.04.2011 14:39

Цитата:

Сообщение от Riim
Перспектива при каждой смене внешности лазить в файл, отвечающий за поведение, меня совсем не радует.

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

Riim 14.04.2011 17:51

Цитата:

Сообщение от Kolyaj
Это должно храниться в файле, который отвечает за анимацию

в js-файле? Я уверен, что это лучше положить в css-файл. Как минимум начальные значения анимации, в большинстве случаев и конечные значения тоже. Помню, кто-то описывал на форуме идею, где в css создавался класс с конечными значениями, а js лишь получал имя этого класса. Мне показалось это хорошей идеей.

Цитата:

Сообщение от Kolyaj
С jQuery это затруднительно

плевать мне на этот квэри :) . Я про одну единственную функцию, ту в которой getComputedStyle и currentStyle.

Kolyaj 14.04.2011 19:28

В CSS лежат неизменяемые стили или конечный набор переключаемых стилей. В случае анимации значения стилей задаёт JS.

Если бы положив значение в CSS, можно было бы его оттуда достать в том же виде, тогда проблем не было бы. Но значение в CSS не равно значению в JS, кроме совсем простых z-index и opacity.

Riim 15.04.2011 02:23

Цитата:

Сообщение от Kolyaj
В CSS лежат неизменяемые стили или конечный набор переключаемых стилей

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

Цитата:

Сообщение от Kolyaj
Если бы положив значение в CSS, можно было бы его оттуда достать в том же виде, тогда проблем не было бы

часто в том же виде вовсе не обязательно. Например, примененные тобой offsetWidth и offsetHeight тоже возвращают размеры только в пикселях, даже если в css ширина задана в процентах, но ведь это не помешало тебе их применить.

x-yuri 15.04.2011 07:47

Цитата:

Сообщение от Kolyaj
Я не исключаю, что есть хороший подход и к jQuery, просто я его не знаю.

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

Цитата:

Сообщение от Kolyaj
Концепция плагинов для постоянно развивающихся приложений (даже небольших, важно постоянное развитие) не подходит.

не подходит, я уже говорил об этом

а по поводу концепции, она удобна тем, что можно выполнить ряд дейтствий над группой обьектов, без дополнительных проверок типа "а есть ли уже такой обьект?". Но неможко неудобна, когда нужно работать с одним обьектом. В mootools, например, можно и так ($$), и так ($). И $$('a').getStyle('width'), например, вернет массив ширин, а не ширину первого элемента. По сути так работает коллекция, возвращаемая $$ - она тупо перенаправляет вызов метода каждому элементу и возвращает массив результатов. А в jquery просто меньше ценят последовательность/целостность/красоту, и больше - простоту/практичность

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

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

Цитата:

Сообщение от Kolyaj
Есть ещё одна обширная, достаточно сложная штука, реализованная в jQuery -- взятие значений CSS-свойств. Эта штука не нужна в принципе, т.к. если вам это понадобилось, значит у вас очень хреново спроектировано приложение.

Цитата:

Сообщение от Kolyaj
Если бы положив значение в CSS, можно было бы его оттуда достать в том же виде, тогда проблем не было бы. Но значение в CSS не равно значению в JS, кроме совсем простых z-index и opacity.

вывод: вы пытаетесь грамотно спроектировать приложение, но есть менее кардинальный подход :)

PeaceCoder 16.04.2011 21:12

Использовать jQuery есть смысл только тогда, если вы подключив его, во всем коде начнете использовать его возможности. А это возможно только в случае полного понимания для чего нужен он и какие у него есть возможности.

x-yuri 17.04.2011 12:08

ну да, ну да...

кстати, вот интересное мнение про jquery:
Цитата:

Сообщение от B~Vladi
jQuery - спасательный круг для дибилов


tenshi 17.04.2011 16:52

> Помню, кто-то описывал на форуме идею, где в css создавался класс с конечными значениями, а js лишь получал имя этого класса. Мне показалось это хорошей идеей.

у меня был где-то такой велосипед, но так до ума и не довёл. в jquery-ui емнип что-то такое есть.

FINoM 17.04.2011 23:53

Цитата:

Сообщение от x-yuri
jQuery - спасательный круг для дибилов

jQuery — молоток, чистый Javascript DOM — лоб. Намного удобнее забивать гвозди молотком, а лбом забивают те, кто не в силах учиться пользоваться инструментами. Кто тут дебил?


Часовой пояс GMT +3, время: 05:31.