рдЯрдЪ-рд╡реЗрдм: рд╕реНрд╡рд╛рдЗрдк рдХрд░реЗрдВ

рдЗрд╕ рдкреЛрд╕реНрдЯ рдХреЗ рд╕рд╛рде, рд╣рдо рд╕реНрдкрд░реНрд╢ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рд╡реЗрдм рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдкрд░ рд▓реЗрдЦреЛрдВ рдХреА рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдЬрд╛рд░реА рд░рдЦрддреЗ рд╣реИрдВред

рдЯрдЪ рд╕реНрдХреНрд░реАрди рд╡рд╛рд▓реЗ рд╕реНрдорд╛рд░реНрдЯрдлреЛрди рдХрд╛рдлреА рд╕рд╛рдорд╛рдиреНрдп рд╣реИрдВ рдФрд░ рд╣рдо рдореЗрдВ рд╕реЗ рдХрдИ рдХреЗ рд▓рд┐рдП рдЕрдкрд░рд┐рд╣рд╛рд░реНрдп рд╕рд╣рд╛рдпрдХ рдмрди рдЧрдП рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рдХреЛрдИ рдореЛрдмрд╛рдЗрд▓ рд╡реЗрдм рдЗрдВрдЯрд░рдлреЗрд╕ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЗ рд╕рдордп рдЙрдирдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рд╕реНрдкрд░реНрд╢ рдирд┐рдпрдВрддреНрд░рдг рд╕рд╛рдорд╛рдиреНрдп рдорд╛рдЙрд╕ рдирд┐рдпрдВрддреНрд░рдг рд╕реЗ рдХрд╛рдлреА рдЕрд▓рдЧ рд╣реИред
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реНрдХреНрд░реАрди рдХреА рдЙрдВрдЧрд▓рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рд╣реА рдмрд╛рддрдЪреАрдд рдХрд░рддрд╛ рд╣реИред рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд┐рд╕ рдЖрдВрджреЛрд▓рдиреЛрдВ рдФрд░ рдХрд┐рддрдиреА рдЙрдВрдЧрд▓рд┐рдпреЛрдВ рдХреЛ рдмрдирд╛рддрд╛ рд╣реИ, рдЗрд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдЕрд▓рдЧ рддрд░рд╣ рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд░рддрд╛ рд╣реИ: рдпрджрд┐ рдЖрдк рдЬрд▓реНрджреА рд╕реЗ рд╕реНрдХреНрд░реАрди рдХреЛ рдЫреВрддреЗ рд╣реИрдВ рдФрд░ рдЕрдкрдиреА рдЙрдВрдЧрд▓реА рдЫреЛрдбрд╝рддреЗ рд╣реИрдВ, рддреЛ рдПрдХ рдХреНрд▓рд┐рдХ рдЯреНрд░рд┐рдЧрд░ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ; рдЕрдЧрд░ рдЫреБрдЖ рдФрд░ рд╕реНрдХреНрд░реАрди рднрд░ рдореЗрдВ рдПрдХ рдЙрдВрдЧрд▓реА рднрд╛рдЧрд╛ - рд╕реНрдХреНрд░реЙрд▓; рдЕрдЧрд░ рджреЛ рдЙрдВрдЧрд▓рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдЖрдпреЛрдЬрд┐рдд - рдЬрд╝реВрдо; рдФрд░ рдПрдХ рдорд╣рд╛рди рдХрдИ рдЕрдиреНрдп рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╡рд┐рдХрд▓реНрдкред

рдЖрдЬ рд╣рдо рд╕реНрд╡рд╛рдЗрдк рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗ, рдЖрдо рд▓реЛрдЧреЛрдВ рдореЗрдВ - рдПрдХ рдкрддреНрд░рдХред рд╕реНрд╡рд╛рдЗрдк рдЖрдкрдХреЛ рдПрдХ рдЙрдВрдЧрд▓реА рдХреА рд╕рд╛рдорд╛рдиреНрдп рдЧрддрд┐ рдХреЗ рд╕рд╛рде "рдкреЗрдЬ" рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдлреНрд▓рд┐рдк рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛рддрд╛ рд╣реВрдВ рдХрд┐ Mail.Ru рдкреЛрд░реНрдЯрд▓ рдХреЗ рдореБрдЦреНрдп рдкреГрд╖реНрда рдкрд░ рд╕рдорд╛рдЪрд╛рд░ рдмреНрд▓реЙрдХ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рд╕реНрд╡рд╛рдЗрдк рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдПред





рдЖрдЗрдП рдЙрди рдкреНрд░рдореБрдЦ рдмрд┐рдВрджреБрдУрдВ рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдкрдХреЛ рдПрдХ рдкрддреНрд░рдХ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЗ рд╕рдордп рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:


рдШрдЯрдирд╛рдУрдВ рдХреЛ рд╕реНрдкрд░реНрд╢ рдХрд░реЗрдВ


рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╕реНрдкрд░реНрд╢ рдЗрдирдкреБрдЯ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдШрдЯрдирд╛рдУрдВ рдХреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:

рд▓реЗрдХрд┐рди рд╕реНрдкрд░реНрд╢ рдЙрдкрдХрд░рдгреЛрдВ рдкрд░ рдХреБрдЫ рдмреНрд░рд╛рдЙрдЬрд╝рд░ - рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, WP IE - рдЗрди рдШрдЯрдирд╛рдУрдВ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рднреА рдорд╛рдЙрд╕ рдШрдЯрдирд╛рдУрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХрддрд╛ рд╣реИ - рдЬреИрд╕рд╛ рдХрд┐, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдбреЗрд╕реНрдХрдЯреЙрдк drag'n'drop рдореЗрдВ:

рд▓реЗрдХрд┐рди рдореЛрдмрд╛рдЗрд▓ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдореЗрдВ рдорд╛рдЙрд╕ рдШрдЯрдирд╛рдПрдБ рдмрд╣реБрдд рдЕрдЬреАрдм рдХрд╛рдо рдХрд░рддреА рд╣реИрдВ -
рдИрд╡реЗрдВрдЯ рдХреЗрд╡рд▓ рддрднреА рд╣реЛрддреЗ рд╣реИрдВ рдпрджрд┐ рдХреЛрдИ рдХреНрд▓рд┐рдХ рдерд╛ (рдФрд░ рддрдм рднреА рдкрд╣рд▓реЗ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ, рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рд╣реА - рдореВрд╕рдбрд╛рдЙрди, рдореВрд╕рдорд╡ рдФрд░ рдорд╛рдЙрд╕рдЕрдк)ред

рдХреНрдпреЛрдВрдХрд┐ рд╕реНрд╡рд╛рдЗрдк рдХреЛ рдХреЗрд╡рд▓ рдЯрдЪ-рдЗрд╡реЗрдВрдЯреНрд╕ рдкрд░ рд╣реА рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рд╕реНрдкрд░реНрд╢ рдШрдЯрдирд╛ рдореЗрдВ рд╕реНрдкрд░реНрд╢ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЙрдкрдпреЛрдЧреА рдЬрд╛рдирдХрд╛рд░реА рдЖрддреА рд╣реИ:

рдкреНрд░рддреНрдпреЗрдХ рд╕реНрдкрд░реНрд╢ рдХреЛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рд╕реМрдВрдкрд╛ рдЧрдпрд╛ рд╣реИред рд╡рд┐рднрд┐рдиреНрди рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдореЗрдВ рдЗрд╕рдХреЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЕрд░реНрде рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдХреБрдЫ рдореЗрдВ рдпрд╣ рд▓рдЧрд╛рддрд╛рд░ рдмрдврд╝ рдЬрд╛рддрд╛ рд╣реИ, рдЕрдиреНрдп рдореЗрдВ рдпрд╣ рддрдм рд░реАрд╕реЗрдЯ рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдЕрдзрд┐рдХ рд╕реНрдкрд░реНрд╢ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЯрдЪ рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рд╡реНрдпреВрдкреЛрд░реНрдЯ, рд╕реНрдХреНрд░реАрди рдФрд░ рдкреЗрдЬ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд╣реЛрддреА рд╣реИред

рддрд░реНрдХ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИ:

Touchstart

/*   started (     swipe)  - touches.  swipe    toches  , ,    ,      . */ if (e.touches.length != 1 || started){ return; } /*   detecting = true, ,    touchmove  ,      тАФ     ,       */ detecting = true; //       touch = e.changedTouches[0]; x = touch.pageX; y = touch.pageY; 


touchmove

 /*   :     started,  detecting,   .    */ if (!started && !detecting){ return; } /*            */ if (detecting){ detect(); } if (started){ draw(); } /*  */ function detect(){ /*      changedTouches.     , ,      .       */ if (e.changedTouches.indexOf(touch) == -1){ return; } /*     ,     ,      .      ,   , ,  . */ if (abs(x - newX) >= abs(y - newY)){ /*      ,   touchmove     (,  Android).    swipe         тАУ   */ e.preventDefault(); // ,    started = true; } //     , ..      detecting = false; } //      function draw(){ /*    ,      touchmove     */ e.preventDefault(); /*      changedTouches.     , ,      .       */ if (e.changedTouches.indexOf(touch) == -1){ return; } /*       .      ,   ┬л┬╗   */ delta = x тАУ newX; /*   ,          ┬л ┬╗ .  ,   ,     */ if (delta > 0 && !leftPage || delta < 0 && !rightPage){ delta = delta / 5; } //  ,     moveTo(delta); } 


рд╕реНрдкрд░реНрд╢рдХ / рд╕реНрдкрд░реНрд╢рдХ

 //   ,    if (e.changedTouches.indexOf(touch) == -1 || !started){ return; } /*    . ,      ,      ,    . */ e.preventDefault(); /* ,       */ swipeTo = delta < 0 ? 'left' : 'right'; //  ,     swipe(swipeTo); 

рдШрдЯрдирд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИред рдирдП рдЪрд┐рдкреНрд╕ рдХреЗ рд╕рд╛рде рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреГрд╖реНрда рдХреЛ рдПрдХ рдЫреЛрдЯреА рджреВрд░реА рдкрд░ рд▓реЗ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЯрдЪрдбрд╛рдЙрди рджреНрд╡рд╛рд░рд╛ рдореВрд▓ рд╕реНрдерд┐рддрд┐ рдкрд░ рд▓реМрдЯреЗрдВред рдФрд░ рдЕрдЧрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрд╣реБрдд рдЬрд▓реНрджреА рдЕрдкрдиреА рдЙрдВрдЧрд▓реА рд╕реЗ рдХреНрд╖реИрддрд┐рдЬ рд░реВрдк рд╕реЗ рд╕реНрд╡рд╛рдЗрдк рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕реНрдХреНрд░реЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реАрдорд╛ рдореВрд▓реНрдп рд╕реЗ рдХрдо рд░рд╛рд╢рд┐ рд╣реИ, рддрдм рднреА рд╕реНрдХреНрд░реЙрд▓ рдХрд░реЗрдВред

рдкреНрд░рддрд┐рдкрд╛рджрди




рдПрдХ рдкрддреНрд░рдХ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдкреГрд╖реНрдареЛрдВ рдХреЛ рдПрдХ рдкрдВрдХреНрддрд┐ рдореЗрдВ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред



рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдорд╛рддрд╛-рдкрд┐рддрд╛ рд╕реЗ рдХреЛрдИ рд╡реНрдпрд╛рдкрдХ рдФрд░ рдХреЛрдИ рдЫреЛрдЯрд╛ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред



рдХреЗрдВрджреНрд░реАрдп рдПрдХ рд╣рдореЗрд╢рд╛ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ, рдмрд╛рдПрдВ рд▓реЛрдЧреЛрдВ рдХреЛ рдмрд╛рдИрдВ рдУрд░ 100% рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рджрд╛рдПрдВ рд╡рд╛рд▓реЗ 100% рджрд╛рдИрдВ рдУрд░ рд╣реЛрддреЗ рд╣реИрдВред



рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧ рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдХрдИ рдХрд╛рд░рдгреЛрдВ рд╕реЗ рдЙрдкрдпреБрдХреНрдд рдирд╣реАрдВ рд╣реИред
рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреА 100% рдкреГрд╖реНрда рдХреА рдЪреМрдбрд╝рд╛рдИ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдкреВрд░реА рддрд╛рд▓рд┐рдХрд╛ рдХреА рдЪреМрдбрд╝рд╛рдИ <рдкреГрд╖реНрда рдХреЗ>> 100%, рдФрд░ рдкреГрд╖реНрдареЛрдВ рдХреЛ рд╕реНрд╡рдпрдВ рдХреЛ 100% / <рдкреГрд╖реНрдареЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛> рдореЗрдВ рд╕реЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЕрддрд┐рд░рд┐рдХреНрдд рдЬреЗрдПрд╕-рдЬреЛрдбрд╝рддреЛрдбрд╝ рдХреЗ рдмрд┐рдирд╛, рдпрд╣ рдЕрд╕рдВрднрд╡ рд╣реИ рдФрд░ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдФрд░ рдЕрдирд┐рдпрдорд┐рддрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдЕрддрд┐рд░рд┐рдХреНрдд рдЧрдгрдирд╛рдУрдВ рд╕реЗ рднреА рдЦрддрд░рд╛ рд╣реИред

рдкреГрд╖реНрдареЛрдВ рдХреЛ рддреИрд░рддрд╛ рдмрдирд╛рдирд╛ рдПрдХ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ рднреА рдирд╣реАрдВ рд╣реИ рдпрд╣ рдХрдИ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдзреАрдореА рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЛ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рднрд╛рд░ рджреЗрдЧрд╛, рднрд▓реЗ рд╣реА рдЖрдк рд╕реНрдЯреНрд░реАрдо рдХреЛ рд╕рд╛рдл рдХрд░реЗрдВред

рд╣рдордиреЗ рдПрдХ рдФрд░ рд╡рд┐рдХрд▓реНрдк рдЪреБрдирд╛:

 .swipe { position: relative; overflow: hidden; height: 300px; } 

рдмреНрд▓реЙрдХ рд░реИрдкрд░ рдХреЛ рдКрдВрдЪрд╛рдИ, рд╕реНрдерд┐рддрд┐: рд╕рд╛рдкреЗрдХреНрд╖ рдФрд░ рдЕрддрд┐рдкреНрд░рд╡рд╛рд╣: рдХреЗ рд╕рд╛рде рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЫрд┐рдкреА рд╣реБрдИ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдкреНрд░рддрд┐рдкрд╛рджрди рдФрд░ рдЧрдгрдирд╛ рдХреЗ рджреМрд░рд╛рди рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдкрд░ рд▓реЛрдб рдХреЛ рдХрд╛рдлреА рдХрдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ - рд╣рдореЗрдВ рдкрддреНрд░рдХ рдХреЗ рдЕрдВрджрд░ DOM рдЯреНрд░реА рдХреА рдПрдХ рдЕрд▓рдЧ рд╢рд╛рдЦрд╛ рдорд┐рд▓рддреА рд╣реИ, рдЬрдм рдкрд░рд┐рд╡рд░реНрддрди рдЕрдВрджрд░ рд╣реЛрддрд╛ рд╣реИ рддреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдкреЗрдбрд╝ рдХреЗ рдЕрдиреНрдп рд╣рд┐рд╕реНрд╕реЛрдВ рдХреЛ рдкреБрди: рдкреНрд░рд╛рдкреНрдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред



рдкреЗрдЬ 3 рддрд╛рд░реНрдХрд┐рдХ рд╕рдореВрд╣реЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдереЗ:
  1. рдмрд╛рдИрдВ рдУрд░ рдкреГрд╖реНрда
  2. рдХреЗрдВрджреНрд░реАрдп рдкреГрд╖реНрда рд╣рдореЗрд╢рд╛ рдПрдХ рд╣реЛрддрд╛ рд╣реИ
  3. рдФрд░ рджрд╛рдИрдВ рдУрд░ рдкреГрд╖реНрда

 .swipe__page { overflow: hidden; position: absolute; left: 0; top: 0; width: 100%; height: 100%; } 

рд░реЗрдВрдбрд░рд┐рдВрдЧ рдХреЛ рдЧрддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдкреГрд╖реНрдареЛрдВ рдХреЛ рдПрдХ рджреВрд╕рд░реЗ рд╕реЗ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП, рдкреНрд░рддреНрдпреЗрдХ рдкреГрд╖реНрда рдХреЗ рд▓рд┐рдП, рд╕реНрдерд┐рддрд┐: рдирд┐рд░рдкреЗрдХреНрд╖; рдФрд░ рдЗрд╕реА рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рдФрд░ рдЖрдХрд╛рд░ред

 .swipe__page_animating { transition: transform 200ms linear; } 

рдЕрдЧрд▓рд╛, рд╕рд╡рд╛рд▓ рджрд╛рдПрдВ рдФрд░ рдмрд╛рдПрдВ рдХреЗ рдкрдиреНрдиреЛрдВ рдХреЛ рдмрджрд▓рдиреЗ рдХрд╛ рд╣реИред
рдкреГрд╖реНрда рд╕реАрдПрд╕рдПрд╕ рд╕рдВрдХреНрд░рдордг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдПрдирд┐рдореЗрдЯреЗрдб рд╣реИрдВред
рдпрджрд┐ рдЖрдк рдмрд╛рдИрдВ рдУрд░ рдЪреЗрддрди рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдмрд╣реБрдд рдзреАрд░реЗ-рдзреАрд░реЗ рдирд┐рдХрд▓рддрд╛ рд╣реИред рдЕрдиреБрд╡рд╛рдж рдмрд╣реБрдд рддреЗрдЬрд╝реА рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдФрд░ CSS рдЯреНрд░рд╛рдВрд╕рдлрд╝реЙрд░реНрдо рд╕реЗ Translate3d рдФрд░ рднреА рддреЗрдЬрд╝реА рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

 .swipe__page_left { transform: translate(-100%, 0); transform: translate3d(-100%, 0, 0); } .swipe__page_center { transform: translate(0, 0); transform: translate3d(0, 0, 0); } .swipe__page_right { transform: translate(100%, 0); transform: translate3d(100%, 0, 0); } 

рдЗрд╕рд▓рд┐рдП, рд╕рднреА рдкреГрд╖реНрдареЛрдВ рдХреЛ рдмрд╛рдПрдВ рдХреЗ рд╕рд╛рде рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ: 0 рдФрд░ рджреЛрдиреЛрдВ рдЕрдиреБрд╡рд╛рдж рд╡рд┐рдХрд▓реНрдк - рдпрджрд┐ рдмреНрд░рд╛рдЙрдЬрд╝рд░ 3 рдбреА рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдХреНрд░рдорд╢рдГ рдмрд╛рдПрдВ, рдХреЗрдВрджреНрд░ рдФрд░ рджрд╛рдПрдВ рдкреГрд╖реНрдареЛрдВ рдХреЗ рд▓рд┐рдП 100%, 0 рдФрд░ 100% рдХреЗ рдХреНрд╖реИрддрд┐рдЬ рдСрдлрд╕реЗрдЯ рдореВрд▓реНрдпреЛрдВ рдХреЗ рд╕рд╛рдеред



рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╣реИрдВ: рджреГрд╢реНрдпрдорд╛рди рдХреЗрдВрджреНрд░реАрдп рдкреГрд╖реНрда, рдФрд░ рдмреНрд▓реЙрдХ рдХреЗ рджреГрд╢реНрдп рднрд╛рдЧ рдХреЗ рдмрд╛рд╣рд░, рдмрд╛рдИрдВ рдУрд░ рдкреГрд╖реНрдареЛрдВ рдХрд╛ рдПрдХ рдвреЗрд░ рдФрд░ рджрд╛рдИрдВ рдУрд░ рдкреГрд╖реНрдареЛрдВ рдХрд╛ рдПрдХ рдвреЗрд░ред



рд╕рднреА рдкреГрд╖реНрдареЛрдВ рдореЗрдВ рд╕реЗ рддреАрди рдХрд╛ рдЪрдпрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:
  1. рдХреЗрдВрджреНрд░реАрдп, рджреГрд╢реНрдпрдорд╛рди
  2. рдЕрдЧрд▓реЗ рдкреГрд╖реНрда рдХреЛ рдмрд╛рдИрдВ рдУрд░
  3. рдЕрдЧрд▓реЗ рдкреГрд╖реНрда рдкрд░ рджрд╛рдИрдВ рдУрд░



 transform: translate(delta, 0); 

рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ, swipe__page_animating рд╡рд░реНрдЧ (CSS рд╕рдВрдХреНрд░рдордг рдЬреЛрдбрд╝рддрд╛ рд╣реИ) рд╕реЗрдЯ рдирд╣реАрдВ рд╣реИред рдЯрдЪрдореЛрд╡ рдЗрд╡реЗрдВрдЯ рджреНрд╡рд╛рд░рд╛, рдЙрдВрдЧрд▓реА рдХреЗ рдСрдлрд╕реЗрдЯ рдХреЗ рдмрд░рд╛рдмрд░ рдХреНрд╖реИрддрд┐рдЬ рдСрдлрд╕реЗрдЯ (рдпрд╛ "рдбреНрд░реИрдЧ рдЧреБрдгрд╛рдВрдХ" рджреНрд╡рд╛рд░рд╛ рд╡рд┐рднрд╛рдЬрд┐рдд рдСрдлрд╕реЗрдЯ рдХреЗ рд╕рд╛рде) рдкреГрд╖реНрда рдХреЗ рд▓рд┐рдП рд╕рдВрдмрдВрдзрд┐рдд рдЕрдиреБрд╡рд╛рдж рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╛рдиреА рдкреГрд╖реНрда рдХреЗрд╡рд▓ рдЖрдкрдХреА рдЙрдВрдЧрд▓реА рд╕реЗ рдЪрд▓рддрд╛ рд╣реИред



рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╕рдм рдХреБрдЫ рдХреБрдЫ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реИред рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рддреАрди рдкреГрд╖реНрда рдЪрд▓рддреЗ рд╣реИрдВ: рд╡рд░реНрддрдорд╛рди рдПрдХ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ, рдФрд░ рдкреГрд╖реНрда рдмрд╛рдПрдВ рдФрд░ рджрд╛рдПрдВ рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ рдПрдХ рдирд┐рд░рдВрддрд░ рдЯреЗрдк рдХрд╛ рдкреНрд░рднрд╛рд╡ рдмрдирд╛рддрд╛ рд╣реИред рддрджрдиреБрд╕рд╛рд░, рджрд╛рдПрдВ рдФрд░ рдмрд╛рдПрдВ рдкрдиреНрдиреЛрдВ рдХреЗ рд▓рд┐рдП, рдСрдлрд╕реЗрдЯ рдЗрд╕рдХреА рдЪреМрдбрд╝рд╛рдИ рдХреЗ рдмрд░рд╛рдмрд░ рд╕реНрдерд┐рддрд┐ рдЪрд┐рд╣реНрди (рджрд╛рдПрдВ рдХреЗ рд▓рд┐рдП - рдкреНрд▓рд╕, рдмрд╛рдПрдВ - рдорд╛рдЗрдирд╕ рдХреЗ рд▓рд┐рдП) рдкреНрд▓рд╕ рдЙрдВрдЧрд▓реА рдХреА рдСрдлрд╕реЗрдЯ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИред



рдЯрдЪреЗрдВрдб рдпрд╛ рдЯрдЪрд╕реНрдХреЗрд▓ рдШрдЯрдирд╛ рдХреЗ рджреНрд╡рд╛рд░рд╛, рдкреГрд╖реНрда swipe__page_animating рд╡рд░реНрдЧ рдкрд░ рд╕реЗрдЯ рд╣реЛрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ CSS рдПрдирд┐рдореЗрд╢рди рд╢рд╛рдорд┐рд▓ рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ рдЕрдВрддрд┐рдо рд╕реНрдерд┐рддрд┐ рдХреЗ рдЕрдиреБрд░реВрдк рдСрдлрд╕реЗрдЯ рдорд╛рдиреЛрдВ рдХреЛ рдпрд╛ рддреЛ рдЪрд╛рд▓реВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдпрд╛ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдорд╛рди рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред



рд╕рдВрдХреНрд░рдордг рдШрдЯрдирд╛ рдХреЗ рджреНрд╡рд╛рд░рд╛, рдЕрд░реНрдерд╛рдд рдПрдиреАрдореЗрд╢рди рдХреЗ рдЕрдВрдд рдореЗрдВ:

рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдмреНрд▓реЙрдХ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реИ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИред

рдпрд╣ рдХреИрд╕реЗ рд╕реНрдкрд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдП рдХрд┐ рдПрдХ рдмреНрд▓реЙрдХ рдХреЛ рдлрд╝реНрд▓рд┐рдк рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдбрд┐рдЬрд╝рд╛рдЗрдирд░ рджреНрд╡рд╛рд░рд╛ рдПрдХ рдЕрд▓рдЧ рд░рд┐рдкреЛрд░реНрдЯ рдХрд╛ рд╡рд┐рд╖рдп рд╣реИред рдореИрдВ рдХреЗрд╡рд▓ рдпрд╣ рдХрд╣ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХрд╛ рджреГрд╢реНрдп рд╕реБрд░рд╛рдЧ рдпрд╛ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдЕрдиреНрдп рддрд░реАрдХрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред



рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕рдорд╛рдЪрд╛рд░ рдмреНрд▓реЙрдХ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЬрд┐рд╕рдХреЗ рдЙрджрд╛рд╣рд░рдг рдкрд░ рдореИрдВ рд╕реНрд╡рд╛рдЗрдк рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддрд╛ рд╣реВрдВ, рд╣рдордиреЗ рдЯреИрдм рдХреЛ рд╕рднреА рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рдХрд░рд╛рдпрд╛ред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмреБрдХрдорд╛рд░реНрдХ рдкрд░ рдЯреИрдк рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдкреЗрдЬ рдХреЛ рдЪрд╛рд▓реВ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рд╕рд╛рде рд╣реА, рдЯреИрдм рднреА рдПрдХ рд╢реАрд░реНрд╖рдХ рд╣реИ рдЬреЛ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХреМрди рд╕рд╛ рдкреГрд╖реНрда рджрд┐рдЦрд╛рдИ рджреЗ рд░рд╣рд╛ рд╣реИред

рдпрд╣ рд╡рд┐рдзрд┐ рдЙрди рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдЧрддрддрд╛ рдХреЗ рд▓рд┐рдП рднреА рдЕрдЪреНрдЫреА рд╣реИ рдЬреЛ рд╕реНрдкрд░реНрд╢ рдШрдЯрдирд╛рдУрдВ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, WP IE рдореЗрдВ, рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рдорд╛рдЪрд╛рд░ рдмреНрд▓реЙрдХ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдЕрдиреНрдп рдЙрдкрдХрд░рдгреЛрдВ рдкрд░ рднреА рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рдЖрдЬ рдХреЗ рд▓рд┐рдП рдмрд╕ рдЗрддрдирд╛ рд╣реАред рдкреНрд░рд╢реНрди рдФрд░ рдЪрд░реНрдЪрд╛ рдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИред

Egor Dydykin,
Mail.Ru рдореБрдЦрдкреГрд╖реНрда рд╡рд┐рдХрд╛рд╕ рдЯреАрдо рдФрд░ рдХреНрд░реЙрд╕-рдкреЛрд░реНрдЯрд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рдиреЗрддрд╛

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


All Articles