10 вставок кода jQuery
jQuery вдохнул новую жизнь в JavaScript. В данном уроке приводится 10 вставок кода jQuery, которые облегчат решение повседневных задач, возникающих при создании веб приложений.
Предварительная загрузка изображений
Предварительная загрузка изображений очень полезна, ведь картинки будут загружаться, пока пользователь занят просмотром другого материала. С помощью jQuery задача решается очень просто:
(function($) { var cache = []; // Аргументом является путь к изображению, относительно текущей страницы $.preLoadImages = function() { var args_len = arguments.length; for (var i = args_len; i--;) { var cacheImage = document.createElement('img'); cacheImage.src = arguments[i]; cache.push(cacheImage); } } jQuery.preLoadImages("image1.gif", "/path/to/image2.png");
Снабжаем ссылки атрибутом target=”blank”
Следующий код будет открывать все ссылки, снабженные атрибутом rel="external"
в новой закладке или окне. Код легко модифицировать для открытия ссылок только с определенным классом.
$('a[@rel$='external']').click(function(){ this.target = "_blank"; }); /* Использование: <a href="http://www.ruseller.com" rel="external">ruseller.com</a> */
Добавляем класс к тегу <body>
если разрешен JavaScript
Данный код представляет собой всего одну строку. Но это самый простой способ определить разрешение использования JavaScript в браузере клиента. Если разрешение есть, класс hasJS
будет добавлен к тегу <body>
.
$('body').addClass('hasJS');
Плавная прокрутка для ссылки
jQuery известен своим функционалом для создания визуальных эффектов. Простой, но приятный эффект - плавное проскальзывание содержания до ссылки. Следующий код создает такой эффект, когда нажимается ссылка с классом topLink
.
$(document).ready(function() { $("a.topLink").click(function() { $("html, body").animate({ scrollTop: $($(this).attr("href")).offset().top + "px" }, { duration: 500, easing: "swing" }); return false; }); });
Плавное проявление/затухание при наведении курсора мыши
Еще один приятный визуальный эффект, который очень популярен - плавное проявление/затухание элементов при наведении на них курсора мыши. Следующий код устанавливает непрозрачность 100% при наведении курсора мыши, и 60% - при потере фокуса.
$(document).ready(function(){ $(".thumbs img").fadeTo("slow", 0.6); // Устанавливаем непрозрачность миниатюр до 60% при загрузке страницы. $(".thumbs img").hover(function(){ $(this).fadeTo("slow", 1.0); // При наведении курсора, непрозрачность становится 100%. },function(){ $(this).fadeTo("slow", 0.6); // Пр потере фокуса непрозрачность опять становится 60%. }); });
Равная высота колонок
При построении шаблона с использованием колонок очень хочется, чтобы они были одинаковой высоты, как в старой доброй таблице. Ниже приведенный код автоматически вычисляет самую высокую колонку и выравнивает остальные по ней.
var max_height = 0; $("div.col").each(function(){ if ($(this).height() > max_height) { max_height = $(this).height(); } }); $("div.col").height(max_height);
Поддержка HTML5 в устаревших браузерах
HTML5 определенно представляет собой будущее веб разработки клиентский приложений. К сожалению, старые браузеры не распознают новых тегов, таких как header
или section
. Данный код принуждает старые браузеры распознавать новые теги HTML5.
(function(){if(!/*@cc_on!@*/0)return;var e = "abbr,article,aside,audio,bb,canvas,datagrid,datalist,details,dialog,eventsource,figure,footer,header,hgroup,mark,menu,meter,nav,output,progress,section,time,video".split(','),i=e.length;while(i--){document.createElement(e[i])}})()
Лучшим вариантом решения будет присоединять файл .js в раздел <head>
вашей страницы HTML:
<!--[if lt IE 9]> <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script> <![endif]-->
Проверяем поддержку браузером определенных свойств CSS3
Здесь приводится простая функция jQuery для проверки поддержки браузером клиента определенных свойств CSS3. В данном примере проверяется свойство border-radius
, но код можно легко модифицировать для проверки другого свойства.
Примечание: нужно опускать тире при передаче имени свойства в качестве парметра. Например, вместо border-radius
, нужно вводить “borderRadius” или “BorderRadius”.
var supports = (function() { var div = document.createElement('div'), vendors = 'Khtml Ms O Moz Webkit'.split(' '), len = vendors.length; return function(prop) { if ( prop in div.style ) return true; prop = prop.replace(/^[a-z]/, function(val) { return val.toUpperCase(); }); while(len--) { if ( vendors[len] + prop in div.style ) { // Браузер поддерживает свойство. // Или можно использовать оператор отрицания (!). return true; } } return false; }; })(); if ( supports('borderRadius') ) { document.documentElement.className += ' borderRadius';
Получаем параметры URL
Получение параметров URL с помощью jQuery - очень простой процесс.
$.urlParam = function(name){ var results = new RegExp('[\\?&]' + name + '=([^&#]*)').exec(window.location.href); if (!results) { return 0; } return results[1] || 0; }
Отключаем клавишу “Enter” в формах
По умолчанию, форма может быть отправлена нажатием клавиши “Enter”. Но в некоторых формах такой функционал может оказаться лишним и порождать некоторые проблемы при вводе данных. Ниже приведенный код подавляет функционирование клавиши “Enter” в форме.
$("#form").keypress(function(e) { if (e.which == 13) { return false; } });
Источник: http://feedproxy.google.com/~r/ruseller/CdHX/~3/gChbfexgYa8/lessons.php
Дайджест новых статей по интернет-маркетингу на ваш email
Новые статьи и публикации
- 2024-11-26 » Капитан грузового судна, или Как начать использовать Docker в своих проектах
- 2024-11-26 » Обеспечение безопасности ваших веб-приложений с помощью PHP OOP и PDO
- 2024-11-22 » Ошибки в Яндекс Вебмастере: как найти и исправить
- 2024-11-22 » Ошибки в Яндекс Вебмастере: как найти и исправить
- 2024-11-15 » Перенос сайта на WordPress с одного домена на другой
- 2024-11-08 » OSPanel 6: быстрый старт
- 2024-11-08 » Как установить PhpMyAdmin в Open Server Panel
- 2024-09-30 » Как быстро запустить Laravel на Windows
- 2024-09-25 » Next.js
- 2024-09-05 » OpenAI рассказал, как запретить ChatGPT использовать содержимое сайта для обучения
- 2024-08-28 » Чек-лист: как увеличить конверсию интернет-магазина на примере спортпита
- 2024-08-01 » WebSocket
- 2024-07-26 » Интеграция с Яндекс Еда
- 2024-07-26 » Интеграция с Эквайринг
- 2024-07-26 » Интеграция с СДЕК
- 2024-07-26 » Интеграция с Битрикс-24
- 2024-07-26 » Интеграция с Travelline
- 2024-07-26 » Интеграция с Iiko
- 2024-07-26 » Интеграция с Delivery Club
- 2024-07-26 » Интеграция с CRM
- 2024-07-26 » Интеграция с 1C-Бухгалтерия
- 2024-07-24 » Что такое сторителлинг: техники и примеры
- 2024-07-17 » Ошибка 404: что это такое и как ее использовать для бизнеса
- 2024-07-03 » Размещайте прайс-листы на FarPost.ru и продавайте товары быстро и выгодно
- 2024-07-01 » Профилирование кода в PHP
- 2024-06-28 » Изучаем ABC/XYZ-анализ: что это такое и какие решения с помощью него принимают
- 2024-06-17 » Зачем вам знать потребности клиента
- 2024-06-11 » Что нового в работе Яндекс Метрики: полный обзор обновления
- 2024-06-11 » Поведенческие факторы ранжирования в Яндексе
- 2024-06-11 » Скорость загрузки сайта: почему это важно и как влияет на ранжирование
Всегда храни верность своему начальнику - следующий, может быть еще хуже... |
Мы создаем сайты, которые работают! Профессионально обслуживаем и продвигаем их , а также по всей России и ближнему зарубежью с 2006 года!
Как мы работаем
Заявка
Позвоните или оставьте заявку на сайте.
Консультация
Обсуждаем что именно Вам нужно и помогаем определить как это лучше сделать!
Договор
Заключаем договор на оказание услуг, в котором прописаны условия и обязанности обеих сторон.
Выполнение работ
Непосредственно оказание требующихся услуг и работ по вашему заданию.
Поддержка
Сдача выполненых работ, последующие корректировки и поддержка при необходимости.