jQuery has a wonderful community of programmers that create incredible things. However, it may become difficult to sift through everything that is released and find the gems that are absolute must-haves. This is why, in this post, you will find a collection of 50 new jQuery plugins and JavaScript libraries that, when applied with good measure, can make your sites a joy to use. The plugins are organized into categories for easier browsing. Enjoy!
https://tutorialzine.com/2013/04/50-amazing-jquery-plugins/
Идея следующая. Да, у нас много JavaScript, да он как-то разбит, да нам надо подключать часть его на страницах по каким-то правилам. Пусть результирующий HTML, который получился в результате отработки всей нашей логики, и будет конфигом того, что нужно подключить.
Поясню. У нас есть тег div, включающий какой-нибудь законченный блок — допустим, это будет список папок, т. е. в этом диве лежит список папок. Первый шаг, мы помечаем с помощью класса — этот див является компонентом. Это означает, что js-движок будет искать его по этой отметке. Вторая строчка — onclick, там указан return, и какой-то хеш. В этом хеше находится описание того, что это за компонент.
В результате нам надо найти компонент в DOM-дереве. Определить, что это за компонент (в моем случае информация о типе находится в onclick). Подключить js-файлы, чтобы все это заработало.
Первая задача решается, по крайней мере в современных браузерах, очень легко. CSS-селекторы работают много где нативно, а там, где не нативно, у вас есть в распоряжении соответствующие библиотеки.
Теперь самая интересная часть, то что записано в onclick. Там можно зашить любую информацию, которая вам нужна для инициализации. В моем случае это тип компонента, по содержимому хеша я понимаю, что это компонент по работе с папками. Достать его очень легко.
Как не утонуть в мегабайтах javascript кода?
Действительно очень удобное и мастштабируемое решение. Как будет шанс попробую его в своих проектах.
Заинтересовался недавно в целях самообучения паттернами проектирования под JavaScript. Вызвано это было тем, что захотелось написать свои небольшую JS библиотеку со всякими нужными мне полезностями. Но в деле JS я откровенно слаб, поэтому начал рыть интернет в поисках чего-то по этой теме. И тут наткнулся на эту презентация, которой и делюсь.
Scalable JavaScript Design Patterns
View more presentations from Addy Osmani
https://jqapi.com - альтернативный сайт с документацией по jQuery 1.6. Удобный, быстрый, полезный.
В общем и целом приятнее официальной документации.
Сейчас читаю данную книгу на английском языке. Очень полезная, написано хорошо и доступно. Подойдет как новичкам в jQuery и JS, так и опытным специалистам, которые смогут узнать для мебя пару новых трюков с любимой библиотекой.
Сайт jQuery.com сообщнает:
jQuery 1.5.2 is now out! This is the second minor release on top of jQuery 1.5 and lands a number of fixes for bugs.
- jQuery Minified (29kb Gzipped)
- jQuery Regular (214kb)
Список изменений:
- #6158 replaceWith не выбрасывает исключение, когда элемент отсуствтует
- #7340 Исползуется один обработчик capturing для имитации bubbling событий focusin/focusout в браузерах отличных от IE. Позволяет вызывать события нативными методами dom.
- #8353 Reverted. Добавлен блок catch в resolveWith, теперь блок finally выполняется в IE7 and IE6.
- #8438 полный стек функций виден теперь при отладке в Google Chrome.
- #8380
$(‘:text’)
распознаётся как ‘type=text’
по-умолчанию
- #8421
resolveWith
можно вызывать даже с одним параметром
- #8423 Никогда не указывается заголовок
X-Requested-With
для кросс-доменных запросов. Исправлена проблема, когда кроссдоменные запросы предвариательно flighted (не смог коректно перевести) и требовали кое-каких дополнительных настроек
- #8456 Исправлена ошибка, при которой
trigger(‘mouseover’)
не вызывал mouseenter
. Мы проверяем, что родитель существует перед вызовом, так что теперь mouseenter
вызывается во время событияmouseover
.
- #8509 Регулярки для парсинга URL теперь не такие строгие и узнают схемы URL schemes, которые не содержат совместимые иерархической структуры (как в секции 2.1.2 документаwww.ietf.org/rfc/rfc2718.txt).
- #8536 Представлены модули на репозитарии jQuery в GitHub.
- #8381
.is(“div”)
теперь работает на отсоединённых нодах в IE 9.
- #8316 Исправлен сеттер
.offset()
для fixed
элементов в WebKit.
- #3333 Исправлен некорректный
.css(“marginRight”)
в WebKit.
- #8692 Исправлена ошибка, когда объект с аргументами заканчивается неопределённым элементом в методе
$.when
.
- #8346 Исправлена проблема совместимости
jQuery.camelCase()
и префиксов IE9.
- #8203 Удалены некоторые ненужные обнуления элементов, которые были добавлены, чтобы чистить память в IE.
- #8519 Основной makefile не применяет минификацию, если в коде ничего не поменялось.
- #8587 Исправлен jQuery-git.js cron-job, чтобы убедится, что он обновляется регулярно.
- #8635 Исправлена ошибка в Firefox 3.6, когда
getComputedStyle()
выбрасывало неконтролируемое исключение
Пока я был занят работой вышла новая версия jQuery 1.5.1.
Ссылки для скачивания:
- jQuery Minified (29kb Gzipped)
- jQuery Regular (212kb)
Адреса CDN:
- Microsoft CDN: https://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.5.1.min.js
- Google CDN: https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js
Сайт blog.jquery.com сообщает:
Lately, we have noticed a significant increase in traffic from sites that hotlink directly to files on our various properties (jquery.com, jqueryui.com, dev.jquery.com, etc.) instead of downloading and hosting them locally or taking advantage of the CDNs that we and others (Google, Microsoft, etc.) provide for this purpose. This behavior has started to negatively affect the performance of our network and is preventing legitimate users from accessing our site at peak times.
In order to improve the performance and availability of our sites for all users, we have disabled hotlinking to images across our entire network. We will be disabling hotlinking to all other types of content (such as CSS and JavaScript) at the end of January. If your site is hotlinking to jQuery domains other than code.jquery.com, please be aware that you must update your site before this deadline or it will stop functioning normally.
Таким образом, c 31 января нельзя будет брать jQuery с сайтов типа query.com, jqueryui.com, dev.jquery.com и т.д. Все хотлинки на такие сайты, кроме code.jquery.com, будут резаться. Так что пользуйтесь CDN, например Google CDN или Miscrosoft CDN.
Ссылки по теме: О CDN, Особенности Google CDN
Нашел на просторах Интернета:
Представьте, у вас есть высококачественные изображения с высоким разрешением (фотографии, скриншоты и т.п.) и их нужно показать на сайте. Понятно, что вставить их, не меняя размеры, не получится. Картинки просто «порвут» дизайн. Поэтому предварительно нужно их уменьшить, но и возможность просмотра полноразмерного изображения необходимо обеспечить.
Классическое решение этой задачи – сделать каждую миниатюру ссылкой на полноразмерное изображение. Т.е. использовать разметку вида.
-
<a href="1.jpg"><img src="1_thumb.jpg" /></a>
где 1_thumb.jpg
– уменьшенное изображение 1.jpg
.
Главный недостаток такого подхода – посетитель покидает страницу, а затем должен на неё вернуться с помощью кнопки «Назад».
На данный момент существует множество решений, которые позволяют получить более красивое решение этой задачи.
Источник - SimpleCoding.org
Может быть полезным. Первый способ мне не очень понравился, второй стандартный, но красивый, хотя prettyPhoto мне кажется лучше. Третий способ встречал на паре интернет-магазинов.
Когда я впервые столкнулся с эффектом LavaLamp, то я честно подумал, что он сделан при помощи флеша. Но оказалось, что это чистый JavaScript, причем реализуется он очень просто и легко, и весит мало!
Демо
Не правда ли красиво? :)