рд▓реЗрдЦ рдмрд╣реБрдд рдЫреЛрдЯрд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рд╡рд┐рдВрдбреЛрдЬрд╝ рдХреЗ рдмреАрдЪ рдбреЗрдЯрд╛ рдХрд╛ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рдмрддрд╛рддрд╛ рд╣реИред
рд╡рд┐рдзрд┐ рд╣рдореЗрдВ рдХрд┐рд╕реА рдЕрдиреНрдп рд╡рд┐рдВрдбреЛ рдореЗрдВ рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдШрдЯрдирд╛ рдкрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧреАред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬреИрд╕рд╛ рдХрд┐ рд╡реАрдХреЗ рдХрд░рддрд╛ рд╣реИ - рдЬрдм рд╣рдо рдПрдХ рдЯреИрдм рдореЗрдВ рд╕рдВрдЧреАрдд рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рдФрд░ рджреВрд╕рд░реЗ рдореЗрдВ рд╣рдо рдПрдХ рд╡реАрдбрд┐рдпреЛ рдЦреЛрд▓рддреЗ рд╣реИрдВ рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рдЯреНрд░реИрдХ рдХреЛ рдЪрд╛рд▓реВ рдХрд░рддреЗ рд╣реИрдВред
рд╕рдорд╛рдзрд╛рди рдХреНрд░реЙрд╕-рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╣реИ, рдЕрдм рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдлреЛрди / рдЯреИрдмрд▓реЗрдЯ рдкрд░ рдЗрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
рддреЛ, рд╕рдорд╛рдзрд╛рди рд╕рд░рд▓ рдФрд░ рдХрд╛рдлреА рд╕реБрд░реБрдЪрд┐рдкреВрд░реНрдг рд╣реИ - рдПрдХ рдХреБрдХреА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗред
рдореИрдВрдиреЗ jQuery рдФрд░ jquery.cookie рдкреНрд▓рдЧрдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдм рдПрдХ рдЖрд╡рд░рдг рдХреЗ рдмрд┐рдирд╛ js рдХреЗ рдореВрд▓ рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдЗрд╕рд▓рд┐рдП, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреБрдХреА рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ "рд╢реНрд░реЛрддрд╛" рд╣реИ:
var lastState = 0; $(document).ready(function() { cookieTimer(); }); function cookieTimer() { var t = $.cookie('state'); if(t != lastState) { lastState = t; $('#stateLog').append('<div>New state: ' + t + '</div>'); } window.setTimeout(cookieTimer, 500); }
рдПрдХ рдмрд╛рд░ рд╣рд░ рдЖрдзреЗ рд╕реЗрдХрдВрдб рдореЗрдВ рд╣рдо "рд░рд╛рдЬреНрдп" рдХреБрдХреА рдореЗрдВ рдбреЗрдЯрд╛ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддреЗ рд╣реИрдВ рдФрд░, рдпрджрд┐ рд╡реЗ рдмрджрд▓ рдЧрдП рд╣реИрдВ, рддреЛ рд╣рдо рдЗрд╕ рдШрдЯрдирд╛ рдкрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрддреЗ рд╣реИрдВ, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рд╣рдо рдмрд╕ рд╕реНрдХреНрд░реАрди рдкрд░ рдбреЗрдЯрд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдФрд░ рднреА, рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдХреЛ lastState рдЪрд░ рдореЗрдВ рд▓рд┐рдЦреЗрдВред
рджреВрд╕рд░реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣рдо рдбреЗрдЯрд╛ рдХреЛ рдмрджрд▓ рджреЗрдВрдЧреЗ:
<button onclick="$.cookie('state', new Date().getTime());">Set new state</button>
рд╡рд░реНрддрдорд╛рди рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдХреЛ рдХреБрдХреА рдЕрд╡рд╕реНрдерд╛ рдореЗрдВ рд╕реЗрдЯ рдХрд░реЗрдВред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдо рд░рд╛рдЬреНрдп_ <рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк> рдХреБрдХреА рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, "рдСрдбрд┐рдпреЛ.рд╕реНрдЯреЙрдк", рдЬрд╣рд╛рдВ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рд╡рд░реНрддрдорд╛рди рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рд░рд╛рдЬреНрдп рдХреБрдХреА рдореЗрдВ рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рдмрд╛рдХреА рдЦрд┐рдбрд╝рдХрд┐рдпрд╛рдВ рдЬрд╛рди рд╕рдХреЗрдВ рдХрд┐ рд╣рдорд╛рд░реА рдШрдЯрдирд╛ рдХрд╛ рдЬрд╡рд╛рдм рдХреИрд╕реЗ рджреЗрдирд╛ рд╣реИред
Jsfiddle рдкрд░ рдбреЗрдореЛ:
рд╢реНрд░реЛрддрд╛ (рдЦреБрд▓рд╛) рдФрд░
рдЗрдВрд╕реНрдЯреЙрд▓рд░ (рдЦреЛрд▓реЗрдВ рдФрд░ рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ, рдлрд┐рд░ рдкрд┐рдЫрд▓реА рд╡рд┐рдВрдбреЛ рдореЗрдВ рджреЗрдЦреЗрдВ)ред
2 рдореЗрдВ 1 рдбреЗрдореЛUPD: рдореИрдВ рдпрд╣ рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рдпрд╣ рд╕рдорд╛рдзрд╛рди рдЙрди рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рд▓реЛрдХрд▓рд╕реНрдЯреЛрд░реЗрдЬ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ, рддрд╛рдХрд┐ рдкрд╛рдардХреЛрдВ рдХреЗ рдмреАрдЪ рдХреЛрдИ рдЕрд╕рд╣рдорддрд┐ рдФрд░ рдЧрд▓рддрдлрд╣рдореА рди рд╣реЛред