Фиксим дивна поведінка плагін jQuery uploadify (і один баг)

Так вийшло, що я на своїх сайтах використовую плагін uploadify для jQuery — uploadify.com (хоч він вже застарів, флеш і все таке, але HTML5-версія у них вже платна). Плагін надає мультизагрузку файлів, не перевантажуючи сторінку, що нам всім і треба. Однак виявилося, що в цьому плагіні не працює (і/або працює не так, як треба) функція перевірки існування файлів перед відправкою на сервер.

Читати далі →

Пишемо самий простий і швидкий input type file

Доброго часу доби, мій дорогий друже. В мережі, так і на Хабре, є безліч статей на тему створення свого input type=«file», але всі вони відрізняються великою кількістю милиць і великою кількістю коду, що, як мені здається, не є добре. Бо, як би це не було парадоксально, менше — краще.



Читати далі →

Від Jquery UI до Ext.js: огляд бібліотек віджетів для побудови інтерфейсу на JS. Частина 2

У той час як веб розвивається і отхватывает все більшу частину пирога, коли-то дісталася десктопа, виробники програмного забезпечення, орієнтованого на корпоративний сегмент, не можуть залишатися без діла. Якщо коли-то рулили додатки з використанням Windows Forms, то зараз все більше контор замислюються, чи варто взагалі використовувати Windows.

image

Природно, розробники подібного ЗА намагаються адаптуватися під нові умови і випускають свої UI бібліотеки, тільки вже для Web.

Правда, є якась дивна тенденція: замість конкуренції з зовнішнім світом виробники конкурують як би між собою. Більшість продуктів мають однаковий набір віджетів, які зовні і структурно виглядають схожими один на одного, випускаються з інсталятором для Windows і мають широку підтримку .NET.

Загалом, живуть в Enterprise світі зі своєю атмосферою. І все ж я спробую розібратися і знайти якісь унікальні обриси у тієї чи іншої бібліотеки. А криються вони трохи за межами веб інтерфейсу, тому я спробую залізти трохи далі банального html + js.

Читати далі →

Скролінг контенту методом торкання і перетягування на jQuery

Hello, jQuery, again!

Завдання даного плагіна — скролінг контенту за допомогою торкання і перетягування.

Використовувані події mousedown/move/up. За замовчуванням ця ланцюжок подій виділяє вміст в межах дотику.

Реалізація — до болю знайоме overflow:hidden, обгортання вмісту елемента і переміщення контенту всередині.

Невирішені проблеми
1. Іноді, на межі між перетином нижнього краю п'ятикратним уповільненням, контент зсувається вгору на певний інтервал. Примітно, що при зворотному русі (в момент перетину цієї риси) контент повертається на своє місце (зсувається вниз).

Сподіваюся, для когось ця стаття виявиться корисною і знайде своє застосування.
Вэлком в коментарі, чекаю на ваші думки, ваш конструктив і негатив, все, що спрямовано на покращення даного коду!

Випробувальний стенд на jsFiddle (52 рядка некомментированного коду).

Читати далі →

Від Jquery до Ext.js: огляд javascript UI бібліотек для SPA. Частина 1

Всім привіт! На дворі 2016 рік, web давно перетворився на щось більше, ніж прості сайти. Левова частка компаній вже давно забула про десктопні програми, і для широкомасштабних завдань використовують веб-додатки, будь це CRM, система управління складом, система аналітики або проста панель адміністрування від сайту (надалі – адмінка).

image

І їх можна зрозуміти, адже для роботи не потрібна специфічна конфігурація, спеціальне встановлене ПЗ, його оновлення. Досить відкрити браузер і програма працює. Тому, на мій погляд, за веб-додатками – майбутнє!

Робити з нуля повноцінну, нітрохи не поступається десктопної програму — це титанічна праця.

Читати далі →

Фреймворк для простих проектів на jQuery

Привіт Хабр! Хочу поділиться своєю напрацюванням. Відразу скажу для яких проектів може бути застосовна моя бібліотека — для статичних сторінок, де є робота з даними з БД через вивантаження/завантаження через AJAX. Припустимо, у вас є простий сайт на який-небудь CMS і вам потрібно зробити калькулятор виходячи з продуктів у БД, потім порахувати вартість і підкоригувати. Ось це прямо ідеальна завдання для цієї бібліотеки.
image

Читати далі →

Масштабування тексту в блоці з допомогою Jquery

Нещодавно отримав замовлення, де поміж всього іншого потрібно було зробити блок, в якому текст повинен масштабуватися всередині блоку. Тобто не залежить, скільки тексту в блоці – весь текст повинен бути видимим! Спочатку думав вважати символи, рядки… Сверстал блок в якому повинен перебувати контент і при введенні тексту зауважив, що блок розтягується в залежності від наповнення. Народилася ідея зробити функцію, яка буде підбирати розмір шрифту, порівнюючи початкову висоту блоку і справжню. Так народилася ось ця функція:

image

Читати далі →

Незвичайні jQuery і селектори CSS

Селектори мають дуже важливе значення. Більшість JQuery методів вимагають вибору елементів для використання. Наприклад, перед тим як прикріпити подія click кнопки, потрібно вибрати саму кнопку.

Більшість JQuery селекторів засновані на існуючих CSS селекторах, тому ви швидше за все добре розбираєтеся в них. Тим не менш, є ряд селекторів, які використовуються не часто. У цій статті я зупинюся на менш відомих, але все ж важливих селекторах.

Давайте перейдемо до списку!


Читати далі →

Приклад реалізації autocomplete з використанням FTS движка PostgreSQL tsearch2

Введення
Коли-то давно я написав для себе щоденник для ведення справ, заміток і фіксації руху по різним завданням. Зроблений він був спочатку на зв'язці PHP + Kohana 2 + PostgreSQL. З часом я переписав все на Yii (першої і тоді єдиною версії). Для повнотекстового пошуку був задіяний вбудований в PostgreSQL движок tsearch2. Багато років я користувався системою, потроху її розвивав і прийшов до того, що обсяг текстів в ній накопичився пристойний. Пошуком доводиться користуватися дуже часто і для підвищення його зручності я задумав прикрутити до нього autocomplete зі складу пакета JQuery UI.

Читати далі →

jQuery UI Datepicker — додавання можливості вибору декількох дат на одному календарі

imageВсім привіт, дорогі читачі Хабра!

Стаття присвячена jQuery UI і його віджету вибору дат.

Часто буває, що на сторінці необхідно зробити вибір періоду дат (а інколи навіть кількох розрізнених дат). Але Datepicker від jQuery UI дозволяє вибирати тільки одну дату в межах одного календаря.

Тому частим рішенням на практиці є створення двох полів вводу з контролем за типом «від і до». Також можна знайти багато «костыльных» способів для вирішення даної задачі — це нам не підходить.

Отже, наша мета — вирішити завдання самими мінімальними зусиллями використовуючи тільки jQuery UI Datepicker.

Для вирішення цього завдання існує невелика розширення для jQuery UI Datepicker, яке збільшує його стандартні можливості без підключення сторонніх віджетів, плагінів і стилів.

Читати далі →