Metoda animate në jQuery

Të gjitha metodat që kemi shqyrtuar në mësimet e mëparshme, janë disi të kufizuara - ato bëjnë pikërisht atë për çfarë janë krijuar. Nëse keni nevojë për më shumë kontroll mbi animacionin - përdorni metodën universale animate.

Si parametër të parë kjo metodë pranon një objekt, në të cilin duhet të vendosni vlerat e reja të vetive CSS që dëshironi të animoni. Dhe si parametër të dytë - kohën e ekzekutimit të animacionit.

Le ta implementojmë këtë metodë në kodin HTML vijues:

html<button id="button">click me</button>
<div id="elem">text...</div>

Le të duket CSS kështu:

css#elem {
  width: 150px;
  height: 150px;
  padding: 10px;
  border: 1px solid green;
}

Le ta bëjmë që me klikim në buton, elementi të ngushtohet në përmasat vijuese: lartësia - 50px, gjerësia - 100px:

javascript$('#button').click(function() {
  $('#elem').animate({height: 50, width: 100}, 1000);
});

Nëse specifikoni vlerën në këtë format height: '+=50', atëherë animacioni do të funksionojë kështu: vlerës aktuale të lartësisë do t'i shtohet 50px (në rastin tonë) dhe elementi do të animohet gradualisht në vlerën e re. Le ta shohim me një shembull:

javascript$('#button').click(function() {
  $('#elem').animate({height: '+=50', width: '+=50'}, 1000);
});

Për më shumë detaje rreth metodës animate, shikoni drejtorinë e jQuery.

animate
Задание 1

Ekziston kjo strukturë:

html<body>
  <div id="block"></div>
</body>
cssdiv {
  width: 100px;
  height: 100px;
  border: 1px solid black;
  cursor: pointer;
  margin-bottom: 20px;
}

Bëni që me klikim në div me #block, gjerësia e tij të rritet në 200px për 1100ms.

Задание 2

Përdorni strukturën nga detyra e parë. Bëni që me çdo klik në div me #block, gjerësia e tij të rritet me 200px dhe çdo rritje e tillë të kryhet për 900ms.

Задание 3

Përdorni strukturën nga detyra e parë. Bëni që me çdo klik në div me #block, gjerësia dhe lartësia e tij të rriten me 100px dhe çdo rritje e tillë të kryhet për 950ms.

Задание 4

Përdorni strukturën nga detyra e parë. Bëni që me çdo klik në div me #block, ai të zhvendoset djathtas me 100px dhe çdo zhvendosje e tillë të kryhet për 700ms.