» Форма входа

»Мoy-weB ver.4.1

» Статистика

Главная » 2009 » Май » 2 » Cниппеты. jQuery, часть вторая

Cниппеты. jQuery, часть вторая
02.Май.2009 | 21:27:44
Расположение объекта по центру экрана

Code

jQuery.fn.center = function()  
  {
  var w = $(window);
  this.css("position","absolute");
  this.css("top",(w.height()-this.height())/2+w.scrollTop() + "px");
  this.css("left",(w.width()-this.width())/2+w.scrollLeft() + "px");
  return this;
  }

Замена текста внутри элемента, используя регулярные выражения

Полезно, например при замене «скрыть» - «показать»

Code

jQuery.fn.toggleText = function(a,b)  
  {
  return this.html(this.html().replace(new RegExp("("+a+"|"+b+")"),
  function(x){return(x==a)?b:a;}));
  }

Запуск события resize после задержки

Задержка нужна по той причине, что событие resize() постоянно, пока юзер изменяет размер окна. А с использование этой функции, ресайз будет запускаться только через некоторое количество мс после того, как юзер прекратит изменять размер экрана.

Code

jQuery.fn.resizeComplete = function(fn, ms)  
  {
  var timer = null;
  this.resize(function()  
  {
  if (timer)  
  {
  clearTimeout(timer);
  }
  timer = setTimeout(fn,ms);
  });
  }

Создание селекторая :contains, чувствительного к регистру

Code

jQuery.extend(jQuery.expr[':'], {
containsIgnoreCase: "(a.textContent||a.innerText||jQuery(a).text()||'').toLowerCase().indexOf((m[3]||'').toLowerCase())>=0"
});

Имитация таймаута

Code

$('a').click(function()
  {
  $(this).animate({width:$(this).width()},5000,
  function()
  {
  // Эта функция запустится только через 5 секунд
  alert('Ссылка была нажата 5 секунд назад');
  })
  });

Автор статьи: Евгений Белодед

Категория: JAVA скрипты | Просмотров: 628 | Добавил: CorsaR
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]