Smooth.js - $ .animate рдХреЛ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдХреЗ рд╕рд╛рде CSS3 рдХреЗ рдмрджрд▓рд╛рд╡ рдХреЗ рд▓рд┐рдП jQuery рдкреНрд▓рдЧрдЗрди

CSS3 рд╕рдВрдХреНрд░рдордг рдПрдХ рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рдЪреАрдЬ рд╣реИред рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдПрдиреАрдореЗрд╢рди рдХреА рддреБрд▓рдирд╛ рдореЗрдВ, рд╡реЗ рд╣реИрдВ:
  1. рдЪрд┐рдХрдиреА рд╕рдВрдХреНрд░рдордг рдкреНрд░рджрд╛рди рдХрд░реЗрдВ;
  2. рдХрдо рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХрд╛ рдЙрдкрднреЛрдЧ рдХрд░реЗрдВ;
  3. рдирдП рдЕрд╡рд╕рд░реЛрдВ рдХреЛ рдЦреЛрд▓реЗрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдореИрдЯреНрд░рд┐рдХреНрд╕ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ (рд╕реАрдПрд╕рдПрд╕-рдЯреНрд░рд╛рдВрд╕рдлреЙрд░реНрдо) рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг;

рдмреЗрд╢рдХ, рд╣рдорд╛рд░реЗ рдкреНрдпрд╛рд░реЗ IE рд╕рдВрд╕реНрдХрд░рдг 9 рдореЗрдВ рднреА рдЙрдирдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред

IE рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдкрд╛рд░рдВрдкрд░рд┐рдХ рддрд░реАрдХреЗ рд╕реЗ рдПрдиреАрдореЗрд╢рди рдХрд░рдирд╛ рддрд░реНрдХрд╕рдВрдЧрдд рд╣реЛрдЧрд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, $ .animate рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗред рдореИрдВ рдРрд╕реЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВ Smooth.js рдкреНрд▓рдЧрдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реВрдВ, рдЬреЛ рдЖрдкрдХреЗ рд▓рд┐рдП рдХрд░реЗрдВрдЧреЗред

рд╡рд╛рдХреНрдп-рд╡рд┐рдиреНрдпрд╛рд╕


рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдЕрддреНрдпрдВрдд рд╕рд░рд▓ рд╣реИ рдФрд░ рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЙрддрдирд╛ рдХрд░реАрдм рд╣реИ jQuery.animate:

$("#subject).smooth({ width: "40px", transform: "rotate(-45deg)", background: "#cbf" }, { duration: 2000, easing: "swing" }); 


рдкрд╣рд▓рд╛ рдкреИрд░рд╛рдореАрдЯрд░ рдПрдиреАрдореЗрд╢рди рдХреЗ рд▓рд┐рдП рдЧреБрдгреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╣реИ, рджреВрд╕рд░рд╛ рдПрдиреАрдореЗрд╢рди рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╣реИред рдЕрдм рддрдХ рдХреА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ, рдХреЗрд╡рд▓ рдЕрд╡рдзрд┐ (рдПрдордПрд╕ рдореЗрдВ рдЕрд╡рдзрд┐) рдФрд░ рд╕рд╣рдЬрддрд╛ (рд╕реНрдореВрдерд┐рдВрдЧ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдирд╛рдо)ред

рдЕрдиреБрдХреНрд░рдорд┐рдХ рдПрдиреАрдореЗрд╢рди


рдпрд╣ рдлрд╝рдВрдХреНрд╢рди $ .Deferred () рдСрдмреНрдЬреЗрдХреНрдЯ рд▓реМрдЯрд╛рддрд╛ рд╣реИ, рддрд╛рдХрд┐ рдЖрдк рдЕрдиреБрдХреНрд░рдо рдореЗрдВ рдХрдИ рдПрдирд┐рдореЗрд╢рди рдЖрд╕рд╛рдиреА рд╕реЗ рдХрд░ рд╕рдХреЗрдВ:
 $("#subject).smooth({ width: "40px" }).done(function() { $("#subject).smooth({ transform: "rotate(-45deg)", )); 


рдСрдкрд░реЗрдЯрд┐рдВрдЧ рдореЛрдб


рдкреНрд▓рдЧрдЗрди рджреЛ рдореЛрдб рдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ - "css" рдФрд░ "jqueryред" рдЬрдм рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдореЛрдб рдХреЛ css рдореЗрдВ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реИ, рдпрд╛рдиреА "jquery" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдореЛрдб рдХреЛ рдХрд┐рд╕реА рднреА рд╕рдордп рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

  $.fn.smooth.configure({ mode: "jquery" }); 


рдирд┐рд╖реНрдХрд░реНрд╖


рдЖрдк рдпрд╣рд╛рдВ рдкрд╛рд░рдЧрдорди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ ред
рдореИрдВ рдкреНрд▓рдЧрдЗрди рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдЖрднрд╛рд░реА рд░рд╣реВрдВрдЧрд╛ред

Source: https://habr.com/ru/post/In150851/


All Articles