2
Деня
Исправлено
3
Барсук
С виду неплохо, спасибо.
4
Евгений
клево почти ext.
Делал нечто подобное(библиотечку элементов UI под свой проект) идеология правда была под плюсовые фреймворки.
5
Деня
Добавил документацию
6
Денис
Можно немного полюбопытствовать? :)
Осознанно ли выбрана такая система, что пустой див заменяется на контролл? Насколько знаю - обычно готовый html-контролл заменяется на кастомный. При этом данные о содержимом подтягиваются именно из html. Это как-то ... каноничнее что-ли :) Непонятно, почему массив значений для селектов передается с неявными индексами в двумерном виде. Поддерживаются не только числовые индексы? Тогда почему бы не виде объекта? Индексы то все равно уникальные. Объект будет выступать в роли ассоциативного массива. А бегать по объекту, как мне кажется, не медленнее, чем по двумерному массиву с неявными индексами :) Как сейчас: array: [[4, 'Поиск'], [0, 'Древовидные комментарии'], [1, 'Обычные комментарии'], [3, 'Автозаполнение']] Как могло бы быть (с явными индексами): array: ['Древовидные комментарии', 'Обычные комментарии', 'Автозаполнение', 'Поиск'] Как могло бы быть (нечисловые индексы): data: {'tc': 'Древовидные комментарии', 'nc': 'Обычные комментарии', 'af': 'Автозаполнение', 'search': 'Поиск'} А выглядит очень симпатично, да :) Приятней, чем перегруженный jQ UI. Обязательно рассмотрю поближе :)
7
Деня
Вас я конечно понял. но селекты я начал делать когда делал для сайта регистрацию. и вот там была такая штука как список стран. список брался из базы данных. и все страны шли всегда не по порядку. И тут возникала проблема. Чуть позже сделаю массив с одним значением элемента. И тогда будет универсальнее
Замена "дива" выбрана осознанно. Потому что это быстрее, и меньше кода. Не надо будет обрабатывать формы. Да и интереснее=)
8
Денис
Теперь ясно. Исторически так сложилось :)
Для веб-приложения это, наверно, весьма оптимальный вариант. Но будет замедлять миграцию. Для использования плагина придется переписать немало кода, если до этого использовались обычные формы или другие плагины :)
9
Деня
Полностью согласен. Но ведь ни кто не гонит ставить его на каждый проект. Дело каждого...
10
Игорь
Спасибо за велосипед )
Там есть типа маскед инпут (http://input.info возле первого слайдера) Так вот если писать в него с клавиатуры значение прыгает, скорее всего потому что ты только на keyup повесил обработчик. лучше если $('').bind('keyup keydown keypress')
11
Деня
#11 сделано.
+ визуальные эффектдобавил. В каледаре теперь есть выбор года и месяца при клике на месяц с годом
12
Павел
хм. пара вопросов/замечаний
- если в селекте выбрать 2й или 3й пункт, а потом открыть вновь список, то будут выделены соответственно 1й и 2й пункты. При этом с 3м, 5м, 6м все нормально. Как так? - по какому принципу выделяется какой-то пункт когда мы в первый раз открываем выпадающий список? - почему все хиден поля имеют имя id? для чего они такие нужны, отправить на сервер толком не получится. - в, хм, комбобоксе конечно не хватает возможности навигации/выбора с клавиатуры. Я вот тоже придерживаюсь идеи создания таких элементов на основе стандартных хтмл. На мой взгляд так даже удобнее, чем для каждого элемента создавать тег скрипт, который будет его заполнять данными. В большинстве случаев получается даже адекватную работу без яваскрипта обеспечить. Прошу простить, если в чем ошибся. Смотрел очень поверхностно, завтра покопаю быть может глубже.
13
Деня
ахахха... это моя ошибка, пр исоздании я id элементов перепутал=) если правильно собирать массив такого не будет
Если вы придерживаетесь такого вида создания - очень хорошо. я нет. а если и да то частично=) ------------------------------------ up: исправил=) up2: о, я вспомнил причину, почему я с самого начала отказался от использования замены html элементов. Представьте объект select с выбором страны. Это примерно 200 с лишним объектов option (пока не будем рассматривать случай подгрузки по ajax), дак вот теперь все это надо пройти с помощью each в jquery и заменить на элементы span (div, кто как делает), делал щас парочку тестов. результаты не сохранил. скорость падает в 4 раза. А если делать автозаполнение? То это надо снова пройтись по 200 элементам... при нажатии 1 кнопки... не много? Хотя при автозаполнении, если делать с умом, то надо создавать такой же массив элементов... Ладно. Эту ситуацию можно рассматривать с двух сторон. Не буду заикаться про radio and checkbox ведь с ними все проще, и я не спорю что замена html в случаи использования этих объектов может оказаться выгоднее.
14
Павел
не не не. я ни в коем разе не спорю :)
Я делал подобное, но у нас стояла задача, чтобы использовать могли люди без знания js и как можно проще. По поводу скорости не знаю. посчитаю может быть даже. А вот с отправкой данных на сервер можно было бы что-нибудь сделать. Ведь сейчас перед отправкой их надо вынимать отдельно, или на onclick вешать обработчик. А ведь скрытый инпут есть. надо всего-то задать ему имя. можно приписывать ему имя как ид родительского дива. или сделать дополнительный атрибут в диве что-то вроде input_name . ну или вписывать в хтмл его изначально. вот как-то так. Нет?
15
Деня
скрытый input есть у каждого элемента в новой версии, задается просто name: 'name_input', даже у прогресс бара он присутствует, поэтому проблем с отправкой на сервер и марок с onclick не будет
16
Деня
Обновил, еще написал маленькие всплывающие подсказки, и модуль таймер... документацию добавлю позже. но хочу сразу сказать, таймер не обычный счетчик, а с возможностью добавлять неограниченное событий, например каждые 5 секунд показывать всплывающее окно, и на 9 секунде сделать фон зеленым. и все с помощью одного таймера=) Самому нравится=)
17
Евгений
а что с сайтом ребята? Захотел поковыряться а тут 404 =(
18
Деня
эмм... так скажем у меня нет хостинга)
Могу скинуть на почту) но на сайтике все варианты в действии + доки) а на почту придут только плагины... Кстати да, версия новая... Механизм checkbox сильно изменен, теперь они одиночки))) Перетаскивание модалок теперь работает на ура (+ позиционируется по цетру на энтер) и еще, есть 4 типа сборки модалок, без верха, без низа, без верха и низа, и полная, просто указываете type. Таймер поправлен, больше не шухерит. Нашел на просторах галактики плагин $.macro(). с помощью него уменьших код. *** принцип действия $.macro('name_macros').css({backgroundColor: '#000'}).fadeIn(300).animate({width: 1000},200); Теперь просто выбираем объект и пишем $('#obj').new_macros(); После вызова этого к обьекту с id obj будет присвоен черный цвет, он плавно появится и за 0.2с изменит свою ширину до 1000.... Если присвоить макрос переменной (возвращает ссылку) то в последствии его можно дополнять) ну и прочее. Забавная и очень удобная штука. можете выдрать из файла function. Все я закончил. Пишите свои e-mail кому скинуть. Кстати разделил все по файлам))
20
Денис
оке
21
Філіп
Привет!
Мне дали задание, написать СВОЙ плагин для jQuery. Как его написать я гуглил, читал статьи но так ничего и не понял, возможно ктото доходчиво растолкует чем плагин лучше простой функции, как его правильно оформить, если допустим у меня уже есть готовая функция, а также как его правильно вызвать... пока всё, надеюсь ктото отзовётся. Да, кстати мне плагином нужно сделать построение графика. Вот такого http://www.melkin.nm.ru (контакт будет матерится). Это построение диаграммы (html, JS, CSS) написано моими кривыми руками, но может кому поможет в чём то... хотя чем нуп может помочь людям)) про баги со сдвигом гистограммы знаю, но это сейчас не важно.
22
Денис
советую почитать про объект canvas
http://www.linkexchanger.su/2009/86.html и про плагин построения графиков http://www.linkexchanger.su/2009/106.html а так же тут можно найти как сделать плагин http://www.linkexchanger.su/2008/67.html |


Алексей