JQuery рдФрд░ рдмрд╛рдЗрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ - рдореЗрд░рд╛ рдЬреЛрдбрд╝

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

рд╢реБрд░реБрдЖрдд рдХреЗ рд▓рд┐рдП, рдЖрдЗрдП рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВред

1. рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рдЖрдк рдЗрд╕реЗ рдХрд╣рддреЗ рд╣реИрдВ, рдЙрд╕реЗ рдЬреЛрд░ рд╕реЗ рд▓рд┐рдЦреЗрдВ


рдЕрдиреНрдп рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рд╕реЗ рдкрд╣рд▓реЗ рдЖрдкрдХрд╛ рдХрд╛рдо рдпрд╣ рджрд┐рдЦрд╛рдирд╛ рд╣реИ рдХрд┐ рдЖрдк рдХреНрдпрд╛ рдХрд░рддреЗ рд╣реИрдВ, рди рдХрд┐ рдЖрдк рдЗрд╕реЗ рдХреИрд╕реЗ рдХрд░рддреЗ рд╣реИрдВред

рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рдЖрдк рдПрдХ рдФрд░ рдХреЛрдб рд▓рд┐рдЦреЗрдВ, рд╕реЛрдЪреЗрдВ рдФрд░ рдЬреЛрд░ рд╕реЗ рдпрд╛ рдЕрдкрдиреЗ рдЖрдк рд╕реЗ рдХрд╣реЗрдВ рдХрд┐ рдЖрдк рдХреНрдпрд╛ рдХрд░рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: "рд╣рдореЗрдВ рдЗрд╕ рддрддреНрд╡ рдХреЛ рд╕рд╛рдлрд╝ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред" рдХрдИ рддреБрд░рдВрдд, рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╣рд┐рдЪрдХрд┐рдЪрд╛рд╣рдЯ рдХреЗ, рдореВрд░реНрддрд┐рдХрд▓рд╛:
$(".info").html("") 

рдХреНрдпреЛрдВрдХрд┐ рдЙрдиреНрд╣реЛрдВрдиреЗ рдкрд╣рд▓реЗ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╡рд╛рдХреНрдпрд╛рдВрд╢ .innerHTML = "" рдерд╛ред рдЕрдзрд┐рдХ рдкрд╕рдВрджреАрджрд╛ рд╡рд┐рдХрд▓реНрдк:
 $(".info").empty() 


рдпреЗ рд╕рдорд╛рди рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдЕрдХреНрд╕рд░ рдирдИ рдЬрд╛рдирдХрд╛рд░реА рдбрд╛рд▓рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдПрдХ рддрддреНрд╡ рдХреЛ рд╕реНрдкрд╖реНрдЯ рдХрд░рддреЗ рд╣реИрдВ:

 $(".info").html("").html("<b>Ok</b>") 


рд▓реЗрдХрд┐рди рдордд рднреВрд▓рдирд╛ - рдЖрдк jQuery рдореЗрдВ рд▓рд┐рдЦ рд░рд╣реЗ рд╣реИрдВ! рдФрд░ рдпрд╣ рдЖрдкрдХреА рджреЗрдЦрднрд╛рд▓ рдХрд░рддрд╛ рд╣реИ, рдФрд░ .html() рдПрдХ рдирдпрд╛ рдорд╛рди рдбрд╛рд▓рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рддрддреНрд╡ рдХреЛ рд╕реНрд╡рдпрдВ рд╕рд╛рдл рдХрд░ рджреЗрдЧрд╛ред

рдФрд░ рд╡рд╣ рдЗрд╕реЗ .innerHTML рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд░рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рд╕рдХреНрд╖рдо рд░реВрдк рд╕реЗ .innerHTML ред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рддрддреНрд╡ рдХреЛ рд╕рд╛рдл рдХрд░рдиреЗ рдХреЗ рдЕрдВрджрд░ рдРрд╕реЗ рддрддреНрд╡ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рди рдкрд░ рдЖрдк рдкрд╣рд▓реЗ рдЗрд╡реЗрдВрдЯ рд╣реИрдВрдбрд▓рд░ рд▓рдЯрдХрд╛рддреЗ рд╣реИрдВ рдпрд╛ .data() рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред jQuery рдЗрд╕реЗ рд╕рд╛рдл рдХрд░ рджреЗрдЧрд╛ рдФрд░ рдореЗрдореЛрд░реА рд▓реАрдХ рдирд╣реАрдВ рд╣реЛрдЧреАред
рд╡реИрд╕реЗ, рдХрднреА-рдХрднреА рдЬрд╛рдирдХрд╛рд░реА рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рди рдХреЗрд╡рд▓ рдПрдХ рддрддреНрд╡ рдХреЛ рд╕рд╛рдл рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд▓реНрдХрд┐ рдЗрд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рд╕рдореАрдЪреАрди рд╣реИ:

 $(".info").remove() 


рдЕрдзрд┐рдХ ...

рдЗрд╕реЗ рд▓рд┐рдЦрддреЗ рд╕рдордп рдЗрд╕рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИ:

 $("#history").css("display", "none") $("#description").css("display", "none") $("#category").css("display", "none") $("#contact").css("display", "none") 


рдЖрдкрдиреЗ рдХрд╣рд╛: "рдЗрддрд┐рд╣рд╛рд╕ рд╣рдЯрд╛рдПрдВ, рд╡рд┐рд╡рд░рдг рд╣рдЯрд╛рдПрдВ, рд╢реНрд░реЗрдгрд┐рдпрд╛рдВ рд╣рдЯрд╛рдПрдВ, рд╕рдВрдкрд░реНрдХ рд╣рдЯрд╛рдПрдВред" рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ, рдЖрдкрдиреЗ рдХрд╣рд╛: "рдЗрддрд┐рд╣рд╛рд╕, рд╡рд┐рд╡рд░рдг, рд╢реНрд░реЗрдгрд┐рдпрд╛рдВ рдФрд░ рд╕рдВрдкрд░реНрдХ рд╣рдЯрд╛рдПрдВред" рддреЛ рдпрд╣ рд▓рд┐рдЦреЗрдВ:

 $("#history, #description, #category, #contact").hide() 


рдФрд░ рдпрд╣ рдордд рднреВрд▓реЛ рдХрд┐ jQuery рддреБрдорд╕реЗ рдкреНрдпрд╛рд░ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЖрдЗрдЯрдо рдХреЛ рдЫрд┐рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП .hide() рдФрд░ .hide() рдХреЛ рджрд┐рдЦрд╛рдирд╛ рд╣реИред

mouseenter/mouseleave рд╡реАрдПрд╕ mouseover/mouseout mouseenter/mouseleave


рдЖрдкрдиреЗ рд╢рд╛рдпрдж рдПрдХ рдЙрдкрджреНрд░рд╡ рджреЗрдЦрд╛: рдХрднреА-рдХрднреА рдЬрдм рдЖрдк рдЯреВрд▓рдЯрд┐рдк рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рддрддреНрд╡ рдкрд░ mouseover/mouseout рдИрд╡реЗрдВрдЯ рдХреА рдПрдХ рдЬреЛрдбрд╝реА рд▓рдЯрдХрд╛рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдЯреВрд▓рдЯрд┐рдк mouseover/mouseout ред рдФрд░ рдпрд╣ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдЬрд┐рд╕ рддрддреНрд╡ рдкрд░ рдЖрдкрдиреЗ рд╣реИрдВрдбрд▓рд░ рд▓рдЯрдХрд╛рдП рд╣реИрдВ, рдЙрд╕рдХреЗ рдЕрдВрджрд░ рдПрдХ рдФрд░ рддрддреНрд╡ рд╣реИред рдЬрдм рдЖрдк рдорд╛рдЙрд╕ рдХрд░реНрд╕рд░ рдкрд░ рдордВрдбрд░рд╛рддреЗ рд╣реИрдВ, рддреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЖрдкрдХреЗ рдмрд╛рд╣рд░реА рддрддреНрд╡ рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╛рдЙрд╕ рдЗрд╡реЗрдВрдЯ, рдФрд░ рдЖрдкрдХреЗ рдЖрдВрддрд░рд┐рдХ рддрддреНрд╡ рдХреЗ рд▓рд┐рдП рдПрдХ mouseover рдЗрд╡реЗрдВрдЯ, рдФрд░ рдлрд┐рд░ рдмрд╛рд╣рд░реА рддрддреНрд╡ рдХреЗ рд▓рд┐рдП рдПрдХ mouseover рдЗрд╡реЗрдВрдЯ рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдПрдХ рдЭрдЯрдХреЗ рдХреА рдУрд░ рдЬрд╛рддрд╛ рд╣реИред

рд▓реЗрдХрд┐рди jQuery рд╣рдорд╕реЗ рдкреНрдпрд╛рд░ рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╣рдореЗрдВ рдШрдЯрдирд╛рдУрдВ рдХреА рдПрдХ рдФрд░ рдЬреЛрдбрд╝реА рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ - mouseenter/mouseleave , рдЬреЛ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣рд▓ рдХрд░рддрд╛ рд╣реИред рдкрд╛рд░рд┐рдд рд╣реИрдВрдбрд▓рд░ рдХреЗ рд▓рд┐рдП, рдПрдХ рдЖрд╡рд░рдг рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдлрд┐рд▓рд╣рд╛рд▓ рдЬрдм рдХрд░реНрд╕рд░ рдЖрдВрддрд░рд┐рдХ рддрддреНрд╡ рдореЗрдВ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдмрд╛рд╣рд░реА рддрддреНрд╡ рдХреЗ рд▓рд┐рдП рдПрдХ mouseout рдШрдЯрдирд╛ mouseout рд╣реЛрддреА рд╣реИред рдЙрд╕реА рд╕рдордп, jQuery рдЗрддрдирд╛ рднреЛрд▓рд╛ рдирд╣реАрдВ рд╣реИ рдФрд░ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рджреНрд╡рд╛рд░рд╛ рдЫрд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред event.relatedTarget рд░реИрдкрд░ рдлрдВрдХреНрд╢рди event.relatedTarget рдкреНрд░реЙрдкрд░реНрдЯреА рдХреЛ рдЪреЗрдХ рдХрд░рддрд╛ рд╣реИ - рдХрд░реНрд╕рд░ рдЕрдм рдХрд┐рд╕ рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░ рд░рд╣рд╛ рд╣реИ - рдФрд░ рдЕрдЧрд░ рдпрд╣ рдХрд┐рд╕реА рдмрд╛рд╣рд░реА рдПрд▓рд┐рдореЗрдВрдЯ рдХреЗ рдЕрдВрджрд░ рд╣реИ, рддреЛ рдпрд╣ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ mouseleave рдЧрдП mouseleave рд╣реИрдВрдбрд▓рд░ рдХреЛ рдХреЙрд▓ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдФрд░ рдХреЛрдИ рдЪрдВрдЪрд▓ рдирд╣реАрдВред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, .hover(handlerIn, handlerOut) рдлрд╝рдВрдХреНрд╢рди .hover(handlerIn, handlerOut) рдмрд╛рд░реЗ рдореЗрдВ рдордд рднреВрд▓рдирд╛, рдЬреЛ рджреЛ рд╣реИрдВрдбрд▓рд░ рд▓реЗрддрд╛ рд╣реИ рдФрд░ рдЙрдиреНрд╣реЗрдВ .hover(handlerIn, handlerOut) рд░реВрдк рдореЗрдВ рд▓рдЯрдХрд╛ рджреЗрддрд╛ рд╣реИ:

 $(selector).hover(function() { tooltip.show() }, function() { tolltip.hide() }) 

UPD : рдХреЙрдорд░реЗрдб рд╡реИрдХреНрд╕рд░ рд╣рдореЗрдВ рдпрд╛рдж рджрд┐рд▓рд╛рддрд╛ рд╣реИ рдХрд┐ рд╕рдВрд╕реНрдХрд░рдг 1.8 рдХреЗ рдмрд╛рдж рд╕реЗ .hover() рдПрдХ рдЕрдкреНрд░рдЪрд▓рд┐рдд рдлрд╝рдВрдХреНрд╢рди рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред

3. .closest() VS .closest()


рдЕрдХреНрд╕рд░ рдореИрдВ рдЗрд╕ рдбрд┐рдЬрд╝рд╛рдЗрди рдореЗрдВ рдЖрддрд╛ рд╣реВрдБ:

 var person = $(".name").parent().parent().parent() 


рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдпрд╣рд╛рдВ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬрд┐рдирдХреЗ рдкрд╛рд╕ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЬрд╛рдирдХрд╛рд░реА рд╣реИ, рдпрд╛ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдФрд░ рдЖрд╡рд╢реНрдпрдХ рддрддреНрд╡ рд╣реИред рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рд╣реЛрдЧрд╛, рдЬрдм рдЖрдк рдЫреБрдЯреНрдЯреА рдкрд░ рдереЗ, рдЖрдкрдХрд╛ $(".name") рдХрд╣реАрдВ рдФрд░ рдЖрд╢реНрд░рдп рдерд╛, рд▓реЗрдХрд┐рди рдЙрд╕реА person рднреАрддрд░? рдХрдИ рдХрд╛рд░реАрдЧрд░ рд╡рд╛рдВрдЫрд┐рдд рд╡рд╕реНрддреБ рдХреЛ .parent() рдЪрдХреНрд░реАрдп рд░реВрдк рд╕реЗ рдХрд╣рддреЗ рд╣реИрдВред

рдЕрдзрд┐рдХ рдЙрдиреНрдирдд рд▓реЛрдЧ рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рд╡рд╣рд╛рдБ .parentsUntil(selector) , рдЬреЛ рд╕рднреА рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдПрдХ (рдЗрд╕реЗ рдЫреЛрдбрд╝рдХрд░) рд╡рд╛рдкрд╕ рдХрд░ рджреЗрдЧрд╛ред рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рдирд┐рд░реНрдгрдп рдмреЛрдЭрд┐рд▓ рд╣реИ:

 var person = $(".name").parentsUntil(".person").last().parent() 


рд▓реЗрдХрд┐рди рдПрдХ рдФрд░ рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯ рддрд░реАрдХрд╛ рд╣реИ:

 var person = $(".name").closest(".person ") 


рдпрджрд┐ рд╣рдореЗрдВ рдпрд╛рдж рд╣реИ рдХрд┐ рд╣рдо рдХреЛрдб рд▓рд┐рдЦрддреЗ рд╣реИрдВ рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рдЗрд╕реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ рдХрд╣реЗрдВрдЧреЗ, рддреЛ рдпрд╣ рд╡рд┐рдХрд▓реНрдк рдЗрд╕рдХреА рдкрд╛рд░рджрд░реНрд╢рд┐рддрд╛ рдФрд░ рд╕рдВрдХреНрд╖рд┐рдкреНрддрддрд╛ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рдЙрдкрдпреБрдХреНрдд рд╣реИред

4. $.ajax() - рдмреЗрд╣рддрд░ рдХрдо рд╣реИ, рд▓реЗрдХрд┐рди рдмреЗрд╣рддрд░ рд╣реИ!


рд╣рдо рд╕рднреА AJAX рд╕реЗ рдкреНрдпрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ $.ajax() ред рдФрд░ рдЖрдк рдЙрд╕рд╕реЗ рдХрд┐рддрдирд╛ рдкреНрдпрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ? рдПрдХ рдЕрдиреНрдп рд▓реЗрдЦрдХ рджреНрд╡рд╛рд░рд╛ рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдореЗрдВ, рдЗрд╕ рдШрдЯрдХ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдмрддрд╛рдИ рдЧрдИ рдереАред рдореИрдВ рдЕрдкрдиреА рдПрдХ рдЬреЛрдбрд╝реА рд▓рд╛рдКрдВрдЧрд╛ ...

рдореБрдЭреЗ рдЭреВрда рдмреЛрд▓рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИ рдЕрдЧрд░ рдореИрдВ рдХрд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдк рдЕрдХреНрд╕рд░ - рдпрджрд┐ рд╣рдореЗрд╢рд╛ рдирд╣реАрдВ - рдПрдХ рд╣реА рдлрд╝рд╛рдЗрд▓ рдХреЛ AJAX рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХреНрд╕реЗрд╕ рдХрд░реЗрдВ, рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЖрджреЗрд╢реЛрдВ рдХреЛ рд╡рд┐рднрд┐рдиреНрди рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдкрд╛рд░рд┐рдд рдХрд░рдирд╛ред рдЖрдк рдЫреЛрдЯреА рдХрд╛рд░реНрд░рд╡рд╛рдЗрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рдирд╣реАрдВ рдмрдирд╛рддреЗ рд╣реИрдВ, рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐? рдпрд╣ рднреА рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдЖрдк рд╣рдореЗрд╢рд╛ рдХрд┐рд╕реА рддрд░рд╣ рдХрд╛ рдкреИрд░рд╛рдореАрдЯрд░ рдкрд╛рд╕ рдХрд░реЗрдВ рдЬреЛ рдирд╣реАрдВ рдмрджрд▓рддрд╛ рд╣реИ; рдФрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рд╣рдореЗрд╢рд╛ рдХреЗрд╡рд▓ json рд▓реМрдЯреЗрдВред рдЖрдЗрдП рд╣рдорд╛рд░реЗ рдЬреАрд╡рди рдХреЛ рдереЛрдбрд╝рд╛ рд╕рд░рд▓ рдХрд░реЗрдВ, рдХреНрдпреЛрдВрдХрд┐ jQuery рд╣рдорд╕реЗ рдкреНрдпрд╛рд░ рдХрд░рддрд╛ рд╣реИ:

 $.ajaxSetup({ dataType: "json", url: "ajax.php", data: { user_id: userId } }); 


рдЕрдм рд╣рдореЗрдВ рдЗрди рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдЬрдм рд╣рдо рдЕрдиреБрд░реЛрдз рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕ рдСрдкрд░реЗрд╢рди рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реИрдВ:

 $.ajax({ data: { product_id: productId }, success: function(json) { console.log(json) }, alert: " ..." //  ? .  }) 

рдФрд░ рдХреЛрдб рдХреЛ рджреЛрд╣рд░рд╛рдП рдЬрд╛рдиреЗ рдХреЗ рд╕рд╛рде рдХреНрд╡реЗрд░реАрдЬрд╝ рдкреВрд░реА рдирд╣реАрдВ рд╣реЛрдВрдЧреАред рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ $.ajaxSetup рдФрд░ $.ajaxSetup рд╕реЗ data рдкреИрд░рд╛рдореАрдЯрд░ рдПрдХ рд╕рд╛рде рд╕рд░реЗрд╕ рд╕реЗ рдЬреЛрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ, рдФрд░ рдЙрдирдХреА рд░рд╛рд╢рд┐ рд╕рд░реНрд╡рд░ рдХреЛ рднреЗрдЬреА рдЬрд╛рддреА рд╣реИ (рдкреИрд░рд╛рдореАрдЯрд░ $.ajax рд╕реЗ $.ajaxSetup рд╕реЗ рдПрдХ рд╣реА рдУрд╡рд░рд░рд╛рдЗрдЯ рдХрд░рддреЗ рд╣реИрдВ)ред

5. $.ajax() - рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рд╕реВрдЪрд┐рдд рдХрд░реЗрдВ


рдЗрд╕рд▓рд┐рдП ... рдпрд╛ рд╢рд╛рдпрдж рдЕрдм рд╣рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЙрд╕рдХреЗ рдЧреБрдкреНрдд рдорд╛рдорд▓реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реВрдЪрд┐рдд рдХрд░реЗрдВрдЧреЗ рдФрд░ рдЬрдм AJAX рдЕрдиреБрд░реЛрдз рдХрд░реЗрдВрдЧреЗ рддреЛ рдЙрд╕реЗ рд╕рдВрджреЗрд╢ рджреЗрдВрдЧреЗ? рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдЯрд╛рд▓ рджрд┐рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХреЛ рдЕрдХреНрд╕рд░ рдПрдХ рд╣реА рдмрд╛рдд рд▓рд┐рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

рдЙрджрд╛рд╣рд░рдг рдХреА рд╕рд╛рджрдЧреА рдХреЗ рд▓рд┐рдП, рд╣рдо рдЗрд╕ рддрд░рд╣ рд╕реЗ рд╕рдВрджреЗрд╢ рдЬрд╛рд░реА рдХрд░реЗрдВрдЧреЗ:

 <div id="popup" class="---"></div> 


рдФрд░ рд╣рдо рдЗрд╕реЗ рдЕрдкрдиреЗ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рд╕рд╛рде рдЬреЛрдбрд╝реЗрдВрдЧреЗ:

 $("#popup").ajaxSend(function(event, xhr, options) { $(this).text(options.alert || "...").show() }).ajaxStop(function() { $(this).fadeOut("fast") }) 

AJAX рдЕрдиреБрд░реЛрдз рд╣реЛрдиреЗ рдкрд░ .ajaxSend() рд╣реИрдВрдбрд▓рд░ рдХреЛ рд╣рд░ рдмрд╛рд░ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИред рдпрд╣рд╛рдВ рд╣рдо рдкреНрд░реЗрд╖рд┐рдд рд╕рдВрджреЗрд╢ (рдКрдкрд░ рджреЗрдЦреЗрдВ) рдпрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕рдВрджреЗрд╢ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддреЗ рд╣реИрдВред

AJAX рдЕрдиреБрд░реЛрдз рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж .ajaxStop() рдХреЛ рдЕрдВрдд рдореЗрдВ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ; рдпрд╛рдиреА рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХрдИ AJAX рдЕрдиреБрд░реЛрдз рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдП рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рд╣реИрдВрдбрд▓рд░ рдХреЛ рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рд░ рдХреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ - рдЕрдВрддрд┐рдо рдЕрдиреБрд░реЛрдз рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рджред

рдФрд░ рдпрджрд┐ рдЖрдк рдПрдХ рдЕрд▓рдЧ рдкреЙрдк-рдЕрдк рдореЗрдВ рд╣рд░ рдмрд╛рд░ рдПрдХ рдирдпрд╛ рд╕рдВрджреЗрд╢ рджреЗрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдХреЛрдб рдХреЛ рдереЛрдбрд╝рд╛ рдмрджрд▓рдирд╛ рд╣реЛрдЧрд╛:

 $("body").ajaxSend(function(event, xhr, options) { $('<div class="popup" />') .appendTo(this) .css({/*  */}) .text(options.alert || "...") .delay(2000) //   2  .fadeOut("fast", function() { $(this).remove() }) }) 


рдЖрдк рдЕрдкрдиреЗ рднрд╡рд┐рд╖реНрдп рдХреЗ рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рдХреА рдЧрдгрдирд╛ рдЬреЛрдбрд╝рдХрд░ рдкреЙрдкрдЕрдк рдХреА рд╕реНрдерд┐рддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреА рдЪрд┐рдВрддрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

6. $ .ajax () - рдХреЛрдб рдХреЛ рд╕реВрдЪрд┐рдд рдХрд░реЗрдВ


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

 $.ajax({ data: { action: "search-name", name: $("#name").val() }, beforeSend: function() { $(searchForm).trigger("start.search") }, complete: function() { $(searchForm).trigger("finish.search") } }) 


рдЕрдм рд╣рдо рдпрд╣ рдЪрд┐рдВрддрд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рдХрд┐ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рд╣рдорд╛рд░реА рд╕рдВрдкрддреНрддрд┐ рдХреЛ рддреЛрдбрд╝ рджреЗрдЧрд╛ рдФрд░ рд░рд╕рднрд░реА рдХреЛ рдЦрд░рд╛рдм рдХрд░ рджреЗрдЧрд╛ред рдпрд╣ рд╕реВрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ (рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ?) рдХрд┐ рд╣рд░ рдХреЛрдИ рд╕рджрд╕реНрдпрддрд╛ рд▓реЗ рд╕рдХрддрд╛ рд╣реИ, рдпрджрд┐ рд╡реЗ рдЪрд╛рд╣реЗрдВ рддреЛ рдШрдЯрдирд╛рдУрдВ рдХреЛ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред start.search рдФрд░ finish.search :

 $(searchForm) .on("start.search", function() { //    }) .on("finish.search", function() { //    }) 


рдЖрдЦрд┐рд░рдХрд╛рд░, рд╣рдореЗрдВ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреА рдШрдЯрдирд╛рдУрдВ рдХреЛ рдмрдирд╛рдиреЗ, рдЙрдиреНрд╣реЗрдВ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдФрд░ рдЙрдирдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реЗрдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╕рдм рдХреБрдЫ рд╕рд░рд▓ рд╣реИ! :) jQuery рд╣рдорд╕реЗ рдкреНрдпрд╛рд░ рдХрд░рддрд╛ рд╣реИред

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


All Articles