Animerad selektor

Selektorn :animated väljer element som för närvarande är involverade i en animation. Om du använder en anpassad jQuery-build utan effektmodul kommer användning av :animated att orsaka ett fel. Eftersom :animated inte hör till CSS-specifikationen är det för bättre prestanda i moderna webbläsare bättre att först filtrera element med en ren CSS-selektor, och sedan tillämpa .filter(':animated').

Syntax

Så här väljer vi element som är involverade i animationer:

javascript$(':animated');

Exempel

Låt oss se till att en av kvadraterna har en animation igång med hjälp av funktionen animateIt. Vid varje klick på knappen med #change kommer färgen på den animerade kvadraten att ändras från grön till röd och tillbaka - genom att ta bort och lägga till klassen colored med metoden toggleClass:

html<button id="change">change</button>

<div></div>
<div id="test"></div>
cssdiv {
  background: green;
  border: 1px solid #AAA;
  width: 80px;
  height: 80px;
  margin: 0 5px;
  float: left;
}
div.colored {
  background: red;
}
javascript$('#change').click(function() {
  $('div:animated').toggleClass('colored');
});

function animateIt() {
  $('#test').slideToggle('slow', animateIt);
}

animateIt();

Se även

  • metoden slideToggle,
    som visar dolda element och döljer synliga
  • metoden toggleClass,
    som lägger till eller tar bort en CSS-klass
  • metoden find,
    som söker efter element inuti redan hittade element