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

розовый слоник 08.04.2011 18:39

jquery - есть ли смысл?
 
Добрый день, обитатели форума:)
Такое дело, сменил работу на более оплачиваемую но тут вышла досада. Я все время работал с обычном js, а тут все написано на jquery. Его я знаю на уровне пятиклассника но дело не в том это все можно выучить, дело в самой этот библиотеке.
Уже 4 дня работаю с ней и поражаюсь насколько неудобно. На обычном js я бы реализовывал тот же слайдер или туже галерею в раза 3 быстрее(имеется введу не просто вставленный а как то отредактирован как хочет этого начальство или не 1, а 2 или 10 в зависимости чего наклацает пользователь).
А еще то что когда я ищу какой то элемент в DOM то он мне выдает массив честно сказать не знаю, как кого но меня чето это раздражает.

Короче сказать есть в ней какие то другие преимущества кроме, как то что если я ищу элемент то мне всего то нужно написать что то в этом духе.
$('#header .block-menu .serial_count .serials-count-menu')

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

kostr 08.04.2011 18:59

Ради кроссбраузерности. Слишком многое в JS зависит от браузера, и надо каждый раз помнить, что в каком будет работать иначе. Про старые IE вообще молчу, это ужас. А в jquery можно об этом вообще не вспоминать.

B@rmaley.e><e 08.04.2011 19:03

Цитата:

Сообщение от розовый слоник
Короче сказать есть в ней какие то другие преимущества кроме, как то что если я ищу элемент то мне всего то нужно написать что то в этом духе.
$('#header .block-menu .serial_count .serials-count-menu')

Зачем? Достаточно
$('.serials-count-menu')
или
$('#header .serials-count-menu')
(зависит от структуры документа).

Если Вам неудобно писать на jQuery, то Вы, скорее всего, его не понимаете / не правильно используете.
Цитата:

Сообщение от розовый слоник
А еще то что когда я ищу какой то элемент в DOM то он мне выдает массив честно сказать не знаю, как кого но меня чето это раздражает.

И чем это мешает? jQuery вообще возвращает свой объект, у которого есть численные индексы и свойство length, поэтому он похож на массив. Но с ним не нужно работать как с массивом! У этого самого объекта есть собственные методы, позволяющие удобно менять атрибуты, назначать обработчики событий, искать потомков и многое другое.

розовый слоник 08.04.2011 19:23

kostr
примерно 20-25 строчек кода для определения браузера, его версии, а так же оси если это андроид или ipad или iphone. Вместо того что бы грузить 50-70 килобайт.

B@rmaley.e><e
Возможно я его не понимаю так, как до этого с ним не сталкивался. Но просто и правда многие штуки удобней делать без него.

FINoM 09.04.2011 03:42

розовый слоник,
Анимация, утилиты (например, $.extend чего стоит), плюшки типа .live(), мелочи типа opacity в .css()...

Kolyaj 09.04.2011 08:19

Цитата:

Сообщение от kostr
Слишком многое в JS зависит от браузера

Не многое, вас обманули.

Цитата:

Сообщение от FINoM
Анимация

5-10 строк на чистом JS.

Цитата:

Сообщение от FINoM
например, $.extend чего стоит

А чего он стоит?

FINoM 10.04.2011 01:44

Цитата:

Сообщение от Kolyaj
5-10 строк на чистом JS.

Ок, замечательный ответ. И смысл спорить после того, как вы сказали что можете запрограммировать в 5-10 строк абстрактное понятие, которое может включать в себя что угодно, имеющее отношение к DOM анимации? Это чистый аргумент ради аргумента, не несущий под собой никакой ценности, так как задачу я никоим образом не конкретизировал. Если конечно имеется в виду код в одну строку, с последующей расстановкой 5-10 переносов, то ок.

x-yuri 12.04.2011 02:50

Цитата:

Сообщение от розовый слоник
На обычном js я бы реализовывал тот же слайдер или туже галерею в раза 3 быстрее(имеется введу не просто вставленный а как то отредактирован как хочет этого начальство или не 1, а 2 или 10 в зависимости чего наклацает пользователь).

ты говоришь про допиливание существующих плагинов?

Цитата:

Сообщение от розовый слоник
А еще то что когда я ищу какой то элемент в DOM то он мне выдает массив честно сказать не знаю, как кого но меня чето это раздражает.

непривычно

Цитата:

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

это не преимщество, это говорит о качестве кода

Цитата:

Сообщение от kostr
Ради кроссбраузерности. Слишком многое в JS зависит от браузера, и надо каждый раз помнить, что в каком будет работать иначе. Про старые IE вообще молчу, это ужас. А в jquery можно об этом вообще не вспоминать.

отчасти, и не столько js, сколько DOM

Цитата:

Сообщение от B@rmaley.e><e
jQuery вообще возвращает свой объект, у которого есть численные индексы и свойство length, поэтому он похож на массив. Но с ним не нужно работать как с массивом!

почему?

Цитата:

Сообщение от Kolyaj
5-10 строк на чистом JS.

хорошо, приведи аналог
$('div').hide('fast');

Kolyaj 12.04.2011 09:02

Цитата:

Сообщение от x-yuri
хорошо, приведи аналог
$('div').hide('fast');

А что это делает? :)

x-yuri 12.04.2011 16:03

скрывает элемент, уменьшая opacity, width и height (хотя width и height там ни к чему, я считаю). Но вообще я к тому, что кому-то важна производительность, кому-то минимум зависимостей, кому-то читабельность, а кому-то просто рано писать свой фреймворк


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