рдкреГрд╖реНрда рдХреЛ рддрд╛рдЬрд╝рд╛ рдХрд┐рдП рдмрд┐рдирд╛ рдбрд╛рдпрдирд╛рдорд┐рдХ рдлрд╝реЗрд╡рд┐рдХреЙрди рдпрд╛ рдкреНрд░рджрд░реНрд╢рди рдХрд░реНрдо

рдЫрд╡рд┐

рд╣рдо рдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ, рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ, рд╣рдорд╛рд░реЗ рдкрд╕рдВрджреАрджрд╛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рд▓рдЧрд╛рддрд╛рд░ рдХрдИ рдЯреИрдм рд╣реИрдВред рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ рдРрд╕реЗ рдорд╛рдорд▓реЗ рд╕рд╛рдордиреЗ рдЖрддреЗ рд╣реИрдВ рдХрд┐ рдЯреИрдм рдХрд╛ рд╢реАрд░реНрд╖рдХ рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрддрд╛ - рдХреЗрд╡рд▓ рдлреЗрд╡рд┐рдХреЙрди рдХрд╛ред рд▓реЗрдХрд┐рди рдЕрдХреНрд╕рд░ рд╡реЗ рд╕рд╛рдЗрдЯ рд▓реЛрдЧреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЕрдиреНрдп рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рдФрд░ рд╢рд╛рдпрдж рд╡реНрдпрд░реНрдеред рд▓реЗрдХрд┐рди рд╣рдо рдЗрд╕ рдЬрдЧрд╣ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВрдЧреЗ (рдЬрд┐рддрдирд╛ рдХрд┐ 16px * 16px!) рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рд╣рдо рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдХрдо рд╕реЗ рдХрдо рд╣рдо рдЬрд╛рдиреЗрдВрдЧреЗ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд░рдирд╛ рд╣реИред



<рд▓рд┐рдВрдХ [rel = "рдЖрдЗрдХрди"] ... /> рдХреЛ рдмрджрд▓рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рднреА рди рдХрд░реЗрдВред



рдХреЛрдИ, рд╢рд╛рдпрдж, рдмрд╣рд╛рдирд╛ рдХрд░реЗрдЧрд╛: тАЬрдпрд╣рд╛рдБ рдХреНрдпрд╛ рдЗрддрдирд╛ рдЬрдЯрд┐рд▓ рд╣реИ? рдореИрдВрдиреЗ рд▓рд┐рдВрдХ рдЯреИрдЧ рд▓рд┐рдпрд╛ рдФрд░ рдЙрд╕рдореЗрдВ src рдмрджрд▓ рджрд┐рдпрд╛! " рд▓реЗрдХрд┐рди рд╡рд╣рд╛рдБ рдпрд╣ рдерд╛, рдХрд╛рдорд░реЗрдбред рдпрд╣ рдХреЛрдб рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛:

  1. var oldicons = document .querySelectorAll( 'link[rel="icon"], link[rel="shortcut icon"]' ); for ( var i = 0; i < oldicons.length; i++ ) { oldicons[i].setAttribute( "src" , "/newicon.png" ); }



  2. var oldicons = document .querySelectorAll( 'link[rel="icon"], link[rel="shortcut icon"]' ); for ( var i = 0; i < oldicons.length; i++ ) { oldicons[i].setAttribute( "src" , "/newicon.png" ); }



  3. var oldicons = document .querySelectorAll( 'link[rel="icon"], link[rel="shortcut icon"]' ); for ( var i = 0; i < oldicons.length; i++ ) { oldicons[i].setAttribute( "src" , "/newicon.png" ); }



  4. var oldicons = document .querySelectorAll( 'link[rel="icon"], link[rel="shortcut icon"]' ); for ( var i = 0; i < oldicons.length; i++ ) { oldicons[i].setAttribute( "src" , "/newicon.png" ); }





рдпрд╣ рднреА рдПрдХ:

  1. $ ( 'рд▓рд┐рдВрдХ [rel = "рд╢реЙрд░реНрдЯрдХрдЯ рдЖрдЗрдХрди"]' ) .attr ( "src" , "/newicon.png" );


рдореИрдВ рдЗрд╕реЗ рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд╣реВрдВрдЧрд╛ (рдХреНрдпрд╛ рдХреЛрдИ рд╕рдордЭрд╛рдПрдЧрд╛?), рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (jQuery рдореЗрдВ):

  1. $ ( 'рд▓рд┐рдВрдХ [rel $ = icon]' ) .remove ();
  2. $ ( 'рд╣реЗрдб' ) .append ($ ( '<рд▓рд┐рдВрдХ rel = "рд╢реЙрд░реНрдЯрдХрдЯ рдЖрдЗрдХрди" рдкреНрд░рдХрд╛рд░ = "рдЫрд╡рд┐ / x-icon" />) ) .attr ( ' href ' , "/newicon.png" );




рдпрд╣реА рд╣реИ, рдкрд╣рд▓реЗ рд╣рдо рддрддреНрд╡ рдХреЛ рд╣рдЯрд╛рддреЗ рд╣реИрдВ, рдпрджрд┐ рдХреЛрдИ рд╣реЛ, рдФрд░ рдлрд┐рд░ рдЗрд╕реЗ рдПрдХ рдмрдЪреНрдЪреЗ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рд┐рд░ рдХреЗ рдЯреИрдЧ рдореЗрдВ рдЬреЛрдбрд╝ рджреЗрдВред рд╣рдЯрд╛рдиреЗ () рдХреЗ рдмрдЬрд╛рдп , рдЖрдк рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди ('') рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред



рдЪреВрдВрдХрд┐ рд╣рдореЗрдВ рдЧрддрд┐рд╢реАрд▓ рдлрд╝реЗрд╡рд┐рдХреЙрдиреНрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рд╣рдо рдЙрдиреНрд╣реЗрдВ рдХреИрдирд╡рд╛рд╕ рдкрд░ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░реЗрдВрдЧреЗ, рдФрд░ рдлрд┐рд░ рдлрд╝реЗрд╡рд┐рдХреЙрди рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред



  1. var c = document .createElement ( 'рдХреИрдирд╡рд╛рд╕' );
  2. c.height = c.width = 16;
  3. var x = c.getContext ( '2d' );
  4. x.font = '18px рдмреЛрд▓реНрдб рдХреИрд▓рд┐рдмреНрд░реА ' ;
  5. x.fillStyle = '# 000' ;
  6. рдЕрдЧрд░ (рдПрдо) {
  7. x.fillText (parseInt (m [1])> 9? '9+' : m [1], 0, 16, 16);
  8. }




__DefineSetter__ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛



GMail рдореЗрдВ, рд╣реЗрдбрд░ рдореЗрдВ рдирдП рд╕рдВрджреЗрд╢реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрддреА рд╣реИ:

(15) - v.pupkin@gmail.com - GMail





рдЪрд▓реЛ рд╡рд╣рд╛рдБ рд╕реЗ regexp рдирдВрдмрд░ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ рдФрд░ рдирдП рд╕рдВрджреЗрд╢реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВред



рдЖрдк Google XML / API рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рдЖрдк рдЗрд╕реЗ рдЧрд▓рдд рди рд╕рдордЭреЗрдВ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдФрд░ рдореБрдЭреЗ рдЗрд╕ рд╡рд┐рдзрд┐ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рдХрд░рдирд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ GMail рдореЗрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдирд╣реАрдВ рд╣реИред рдФрд░ рдХреИрд╕реЗ рдЖрдк рд╡рд┐рднрд┐рдиреНрди window.setTimeOut рдХрд╛ рд╕рд╣рд╛рд░рд╛ рд▓рд┐рдП рдмрд┐рдирд╛ рд╡рд┐рдВрдбреЛ рд╢реАрд░реНрд╖рдХ рдкрд░рд┐рд╡рд░реНрддрди рдХреЛ рд╕рдВрднрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдЧреЗрдХреЛ рдХреА __defineSetter__ рд╡рд┐рдзрд┐ (рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдпрд╣рд╛рдБ ) рд▓реЗрддреЗ рд╣реИрдВред



рдпрд╣ рд╡рд┐рдзрд┐ рдЖрдкрдХреЛ рдПрдХ рдИрд╡реЗрдВрдЯ рд╣реИрдВрдбрд▓рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ рдЬрдм рдХрд┐рд╕реА рддрддреНрд╡ рдХрд╛ рдбреЗрдЯрд╛ рдмрджрд▓рддрд╛ рд╣реИ (рд▓реЗрдХрд┐рди рдЕрднреА рддрдХ рдирд╣реАрдВ рдмрджрд▓рд╛ рдЧрдпрд╛ рд╣реИ):

  1. Object.prototype .__ рдбрд┐рдлрд╛рдЗрдирд╕реЗрдЯреНрдЯрд░ __ ( 'Id' , рдлрдВрдХреНрд╢рди (рдбреЗрдЯрд╛) {
  2. рдЪреЗрддрд╛рд╡рдиреА ( "рдЭреБрдХрд╛ рдбреЗрдЯрд╛ =" + рдбреЗрдЯрд╛);
  3. });


рдпрд╣ рдЙрджрд╛рд╣рд░рдг рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдХрд┐ рд╡рд╕реНрддреБ рддрддреНрд╡ рдХреА рдЖрдИрдбреА рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рдХреНрд╖рдг рдореЗрдВ (рдФрд░ рдпрд╣ рдХреЛрдИ рдЯреИрдЧ рдпрд╛ рд╡реИрд╢реНрд╡рд┐рдХ рдЪрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ), рд╣рдореЗрдВ рдПрдХ рд╕реВрдЪрдирд╛ рдЪреЗрддрд╛рд╡рдиреА ("рдЭреБрдХрд╛ рдбреЗрдЯрд╛ =" + рдбреЗрдЯрд╛) рджрд┐рдЦрд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛;



рдФрд░ рдЪрд▓рд┐рдП рдЗрд╕ "рд╣реИрдВрдбрд▓рд░" рдХреЛ document.title рдкрд░ рд▓рдЯрдХрд╛рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рд╣рдо рдЕрдкрдиреЗ рдЙрдкрд░реЛрдХреНрдд рд╕рднреА рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░реЗрдВрдЧреЗ, рдЬрд┐рд╕рд╕реЗ рд▓реЗрдЦ рдХреЗ рдкрд╣рд▓реЗ рднрд╛рдЧ рдХрд╛ рд╕рд╛рд░рд╛рдВрд╢ рд╣реЛрдЧрд╛ред

  1. рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ .__ рдбрд┐рдлрд╛рдЗрдиреНрдЯрд░ __ ( 'рд╢реАрд░реНрд╖рдХ' , рдлрдВрдХреНрд╢рди (v) {
  2. рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рд╣рдЯрд╛рдПрдВред // рдкреБрд░рд╛рдиреЗ "рд╣реИрдВрдбрд▓рд░" рдХреЛ рд╣рдЯрд╛ рджреЗрдВ
  3. рджрд╕реНрддрд╛рд╡реЗрдЬ .title = v; // рдирдП рдбреЗрдЯрд╛ рдХреЛ рдЗрдВрдЯрд░рд╕реЗрдкреНрдЯ рдХрд░реЗрдВ рдФрд░ рдПрдХ рд╡реИрд░рд┐рдПрдмрд▓ рдореЗрдВ рдбрд╛рд▓реЗрдВ
  4. рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ .__ рдбрд┐рдлрд╛рдЗрдиреНрдЯрд░рд╕реЗрдЯ __ ( 'рд╢реАрд░реНрд╖рдХ' , рдЖрд░реНрдЧреНрдпреБрдореЗрдВрдЯреНрд╕.рд▓реАрд▓рд╛); // рдФрд░ рдЬрд▓реНрджреА рд╕реЗ рд╣реИрдВрдбрд▓рд░ рдХреЛ рдЙрд╕рдХреА рдЬрдЧрд╣ рдкрд░ рд▓реМрдЯрд╛ рджреЗрдВ
  5. var m = / \ (([0-9] +) \) /ред exec (v); // рдПрдХ рдЪрд░ рдХреЗ рд╕рд╛рде рд╕рдВрджреЗрд╢реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд╕рд╛рде рдирд┐рдпрдорд┐рдд рдЯреИрдЧ рдХрд╛рдЯрддрд╛ рд╣реИ
  6. var c = document .createElement ( 'рдХреИрдирд╡рд╛рд╕' ); // рдХреИрдирд╡рд╛рд╕ рд╢реБрд░реВ рдХрд░реЛред рдПрдХ рдХреИрдирд╡рд╛рд╕ рдмрдирд╛рдПрдБ
  7. c.height = c.width = 16; // рдФрд░ рдЗрд╕реЗ рдЖрдпрд╛рдо рдЕрд╕рд╛рдЗрди рдХрд░реЗрдВ
  8. var x = c.getContext ( '2d' ); // рд╕рдВрджрд░реНрдн рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ
  9. x.font = '18px рдмреЛрд▓реНрдб рдХреИрд▓рд┐рдмреНрд░реА ' ; // рдлрд╝реЙрдиреНрдЯ рд╢реИрд▓реА рд╕реЗрдЯ рдХрд░реЗрдВ
  10. x.fillStyle = '# 000' ; // рдФрд░ рд░рдВрдЧ рднрд░реЗрдВ
  11. рдЕрдЧрд░ (рдПрдо) {
  12. x.fillText (parseInt (m [1])> 9? '9+' : m [1], 0, 16, 16); // рдпрджрд┐ рд╕рдВрдЦреНрдпрд╛> 9 рд╣реИ, рддреЛ "9+" рджрд┐рдЦрд╛рдПрдВ
  13. }
  14. var o = document .querySelectorAll ( 'рд▓рд┐рдВрдХ [rel = "рдЖрдЗрдХрди"], рд▓рд┐рдВрдХ [rel = "рд╢реЙрд░реНрдЯрдХрдЯ рдЖрдЗрдХрди"]' ); // рд╕рднреА рд╕рдВрднрд╡ рдлрд╝реЗрд╡рд┐рдХреЙрди рдЯреИрдЧ рдвреВрдВрдвреЗрдВ
  15. рдХреЗ рд▓рд┐рдП ( var i = 0; рдореИрдВ <o.length; i ++) {
  16. o [i] .parentNode.removeChild (o [i]); // рдФрд░ рдЙрдиреНрд╣реЗрдВ рдзрдорд╛рдХреЗрджрд╛рд░,
  17. }
  18. var n = document .createElement ( 'рд▓рд┐рдВрдХ' ); // рдлрд┐рд░ рдЗрд╕реЗ рдмрдирд╛рдПрдБ
  19. n.setAttribute ( 'rel' , 'icon' ); // рдЖрд╡рд╢реНрдпрдХ atrubuts рдХреЗ рд╕рд╛рде
  20. n.setAttribute ( 'href' , c.toDataURL ()); // c.toDataURL () рдкрд╛рда рдореЗрдВ рдбреЗрдЯрд╛ "рдЫрд╡рд┐: рдЫрд╡рд┐ / рдкреАрдПрдирдЬреА; рдЖрдзрд╛рд░ 64, ......" / рдХреЗ рд░реВрдк рдореЗрдВ рд╣рдорд╛рд░реЗ рдХреИрдирд╡рд╛рд╕ рдкрд░ рддреИрдпрд╛рд░ рдЪрд┐рддреНрд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ;
  21. рджрд╕реНрддрд╛рд╡реЗрдЬ .querySelector ( 'head' ) .appendChild (n); // рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ, рдФрд░ рдЕрдВрдд рдореЗрдВ, рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рд╣реМрд╕рд▓реЗ рд╕реЗ рдирд┐рд░реНрдорд┐рдд рдлрд╝реЗрд╡рд┐рдХреЙрди рд▓рд╛рдЧреВ рдХрд░реЗрдВред рджреЗрдЦрд╛!
  22. });




рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП, рд▓рд┐рдВрдХ рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рдлрд┐рд░ GMail рдкрд░ рдЗрдирдмреЙрдХреНрд╕ рдореЗрдВ рдЬрд╛рдПрдВред рдпрджрд┐ рдирдП рд╕рдВрджреЗрд╢ рд╣реИрдВ, рддреЛ рдЖрдк рдХрд╛рдЙрдВрдЯрд░ рдХреЛ рдлрд╝реЗрд╡рд┐рдпрди рдЪрд┐рддреНрд░ рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрдЦреЗрдВрдЧреЗред рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП Ubuntu рдХреЗ рддрд╣рдд рдУрдкреЗрд░рд╛ рдФрд░ рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ рдкрд░ рдХрд╛рдо рдХрд░рддрд╛ рдерд╛ред рдХреНрд░реЛрдо рдХреЛ рдпрд╣ рд╡рд┐рдЪрд╛рд░ рдкрд╕рдВрдж рдирд╣реАрдВ рдЖрдпрд╛ред



рдпрд╣ рдХрд╣рд╛рдВ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ?



рд╣рд╛рдВ, рддреБрдо рдЬрд╣рд╛рдВ рдЪрд╛рд╣реЛред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЯреИрдм рдХреЛ рди рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдХреНрдпрд╛ рдХреЛрдИ рдирдП рд╕рдВрджреЗрд╢ рд╣реИрдВ, рдЖрдк рдЗрд╕ рдкрджреНрдзрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЖрдк Google Labs рдХреЗ рд╕рд╛рде рдХрд╛рдЙрдВрдЯрд░ рдФрд░ FF рдХреЗ рд▓рд┐рдП gmail-notifier рдЬреИрд╕реА рдЪреАрдЬреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рд▓реЗрдХрд┐рди рд╢рд╛рдпрдж рдЖрдк рдЕрдкрдиреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдЕрдкрдиреА рд╕рд╛рдЗрдЯ рдкрд░ рдХрд┐рд╕реА рдЪреАрдЬрд╝ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реВрдЪрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред



рдпрд╛ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЖрдирдВрдж рд▓реЗрдВ рдХрд┐ рдЖрдкрдХрд╛ рдХрд░реНрдо рдХреИрд╕реЗ рдмрдврд╝рддрд╛ рд╣реИ рдпрд╛ рдПрдХ рд╣рдм рдкрд░ рдЧрд┐рд░рддрд╛ рд╣реИ :)



рдореИрдВ рдмрд╛рдж рдХреЗ рдорд╛рдорд▓реЗ рдХреЛ рдПрдХ рдФрд░ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реВрдВрдЧрд╛ред



рдореИрдВрдиреЗ рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрдВрдЬрди рдХреЗ рд░реВрдк рдореЗрдВ рдЧреНрд░реЗрд╕реАрдореЗрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред рдЖрдк рдЗрд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред



рдкреНрд░рджрд░реНрд╢рди рдХреЗрд╡рд▓ рддрднреА рдХрд╛рдо рдХрд░реЗрдЧрд╛ рдЬрдм рдЖрдк рд╣реЗрдмреНрд░рд╕реЗрдиреНрдЯ рдореЗрдВ рд╣реИрдВ (рд╡реИрд╕реЗ, рдХреЗрд╡рд▓ рдЖрдкрдХрд╛ рдирд╣реАрдВ)ред рдЖрдк рдмрд╕ рдЕрдЬрд╛рдХреНрд╕ рдХреЛ рдкреЗрдВрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЕрдкрдиреЗ рд╣рдм рдореЗрдВ рд╣реЛрдиреЗ рдХреЗ рдмрд┐рдирд╛ рдЕрдВрдХ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╣ рдЖрдкрдХреЗ рд╡рд┐рд╡реЗрдХ рдкрд░ рд╣реИред рдпрджрд┐ рдЖрдк рдЪрд╛рд╣реЗрдВ, рддреЛ рдЖрдк рдЗрд╕реЗ Google Chrome (рд╡рд┐рд╕реНрддрд╛рд░ рд▓рд┐рдЦреЗрдВ) рдпрд╛ рдУрдкреЗрд░рд╛ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╡рд╣реА "рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ-рдмреБрдХрдорд╛рд░реНрдХ)" рдкрд░ рд╕реНрдХреНрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред



рдФрд░ рдпрд╣рд╛рдБ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реА рд╣реИ (рдЕрджреНрдпрддрди : рдереЛрдбрд╝рд╛ рдЕрджреНрдпрддрди):





  1. var c = document .createElement ( "рдХреИрдирд╡рд╛рд╕" ); // рдПрдХ рд╣реА рдХреИрдирд╡рд╛рд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
  2. c.height = c.width = 16;
  3. var cx = c.getContext ( "2d" );
  4. cx.beginPath (); // рдЗрд╕ рдкрд░ рдПрдХ рдиреАрд▓реЗ рд░рдВрдЧ рдХрд╛ рдмреЙрдХреНрд╕ рдФрд░ рдХрд╛рд▓реЗ рд░рдВрдЧ рдХрд╛ рдЯреЗрдХреНрд╕реНрдЯ рдмрдирд╛рдПрдВ
  5. cx.rect (0, 3, 18, 11); // рдФрд░ рдЙрдиреНрд╣реЗрдВ рдХреИрдирд╡рд╛рд╕ рдкрд░ рд░рдЦреЗрдВ
  6. cx.fillStyle = "# 6DA3BD" ;
  7. cx.fill ();
  8. cx.font = "10px рд╕рд╛рдорд╛рдиреНрдп рддрд╣реЛрдорд╛" ;
  9. cx.fillStyle = " #fff " ;
  10. var mark = document .querySelectorAll ( ".mark span" ); // рдкреГрд╖реНрда рд╕реЗ рдирдВрдмрд░ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ
  11. cx.fillText (parseInt (рдирд┐рд╢рд╛рди [0] .innerHTML), 0, 12, 16);
  12. // рдлреЗрд╡рд┐рдХреЙрди рд▓рд╛рдЧреВ рдХрд░реЗрдВ
  13. var oldicons = document .querySelectorAll ( 'рд▓рд┐рдВрдХ [rel = "рдЖрдЗрдХрди"], рд▓рд┐рдВрдХ [rel = "рд╢реЙрд░реНрдЯрдХрдЯ рдЖрдЗрдХрди"]' );
  14. ( var i = 0; рдореИрдВ <oldicons.length; i ++) {
  15. Oldicons [i] .parentNode.removeChild (рдУрд▓реНрдбрд┐рдХреЙрди [i]);
  16. }
  17. var newicon = document .createElement ( "рд▓рд┐рдВрдХ" );
  18. newicon.setAttribute ( "rel" , "icon" );
  19. newicon.setAttribute ( "href" , c.toDataURL ());
  20. рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ .querySelector ( "рд╣реЗрдб" ) .appendChild (newicon);
  21. // рдкреГрд╖реНрда рдХреЛ рд╣рд░ 2 рдорд┐рдирдЯ рдореЗрдВ рддрд╛рдЬрд╝рд╛ рдХрд░реЗрдВ
  22. window.setTimeout ( рдлрд╝рдВрдХреНрд╢рди () {
  23. window.clearTimeout ();
  24. window.location.reload ();
  25. }, 120000);
* рдЗрд╕ рд╕реЛрд░реНрд╕ рдХреЛрдб рдХреЛ рд╕реЛрд░реНрд╕ рдХреЛрдб рд╣рд╛рдЗрд▓рд╛рдЗрдЯрд░ рдХреЗ рд╕рд╛рде рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред




рдмрд╕ рдЗрддрдирд╛ рд╣реАред рдпрджрд┐ рдкреЛрд╕реНрдЯ рдХрд╛ рдХрдо рд╕реЗ рдХрдо рдХреБрдЫ рд╣рд┐рд╕реНрд╕рд╛ рдЖрдк рд╕реНрд╡рдпрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рдкрд╛рддреЗ рд╣реИрдВ, рднрд▓реЗ рд╣реА рдЗрд╕рд╕реЗ рд╡рд┐рд╖рдп рдХреЗ рд╡рд┐рд╖рдп рдХреА рднреА рдЪрд┐рдВрддрд╛ рди рд╣реЛ, рддреЛ рд╕рдордп рдХреЛ рд╡реНрдпрд░реНрде рдорд╛рдирдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВ рдЗрд╕реЗ рд▓рд┐рдЦрдиреЗ рдкрд░ рд╡реНрдпрд░реНрде рдирд╣реАрдВред

рдпрджрд┐ рдЖрдк рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдлрд╝реЗрд╡рд┐рдХреЙрди рдмрджрд▓рдиреЗ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк jQuery рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдХрд┐рдП рдЧрдП рдкреНрд▓рдЧрдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ - рд╡рд╣рд╛рдВ рдЖрдк рдлрд╝реЗрд╡рд┐рдХреЙрди рдХреЗ рд╕рд╛рде-рд╕рд╛рде (рдПрдХ рд╣реА рдХреИрдирд╡рд╛рд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ) рдЪреЗрддрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред



рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред



All Articles