'рдХреНрд▓реАрди' рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ: рдирд┐рд░рдВрддрд░

рдХрднреА-рдХрднреА рдорд╛рдирд╡рддрд╛ рдЕрдкрдиреА рдиреАрд░рд╕рддрд╛ рдФрд░ рдЕрдирд┐рдЪреНрдЫрд╛ рдХреЗ рд╕рд╛рде рдПрдХ рд╕реНрдерд┐рддрд┐ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╢реНрдЪрд░реНрдпрдЪрдХрд┐рдд рд╣реЛ рдЬрд╛рддреА рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╣реИ ... (рдЕрдЬреНрдЮрд╛рдд)

рд╢рд╛рдпрдж рдпрд╣ рдПрдкрд┐рдЧреНрд░рд╛рдл рдореЗрд░реЗ рд╡рд┐рдЪрд╛рд░ рд╕реЗ рдореЗрд░реЗ рд╕рд╛рде рдЕрдзрд┐рдХ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рд╕рд░реНрд╡рд╢реНрд░реЗрд╖реНрда рдХреЗ рд▓рд┐рдП рдЖрд╢рд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ ...

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

рдореИрдВ рдЖрдкрдХреЛ рдПрдХ рдЫреЛрдЯреА рд╕реА рдХрд╣рд╛рдиреА рдмрддрд╛рдКрдВрдЧрд╛ рдЬреЛ рдореБрдЭреЗ рдХрд╛рдо рдХреЗ рджреМрд░рд╛рди рд╣реБрдИ рдереАред рдпрд╣ рдПрдХ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдкрд╣рд▓реЗ рдерд╛, рдХрд┐рд╕реА рддрд░рд╣ рдореБрдЭреЗ рдПрдХ рдирдП рд╡реЗрдм-рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕реЗ рдЬреЛрдбрд╝ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬрд┐рд╕рдХреЗ рдбрд┐рдЬрд╛рдЗрди рдореЗрдВ рдореЗрд░рд╛ рдХреЛрдИ рдорд╛рдореВрд▓реА рд░рд┐рд╢реНрддрд╛ рдирд╣реАрдВ рдерд╛ред рдЯрд┐рдорд▓реАрдб рдиреЗ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ svn php рдФрд░ js рдлреНрд░реЗрдорд╡рд░реНрдХ рдЕрдкрд▓реЛрдб рдХрд┐рдпрд╛ред
Mootools 1.2.2 рдпрд╛ 1.2.4 рдХреЛ JS рдХреЗ рд░реВрдк рдореЗрдВ рдЪреБрдирд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, JxLib рдХреЗ рд░реВрдк рдореЗрдВ Jx UI рд▓рд╛рдЗрдмреНрд░реЗрд░реАред рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реЛ рдЧрдпрд╛, рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкреВрд░реА рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдереА, рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕рдВрд╕реНрдХрд░рдг рдмрдврд╝ рд░рд╣реЗ рдереЗ, рдФрд░ рдЗрд╕реА рддрд░рд╣ред рдФрд░ рдЗрд╕рд▓рд┐рдП, рдПрдХ рдмрд┐рдВрджреБ рдкрд░, рдЬрдм рдореИрдВ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдпрд╛, рддреЛ рдореИрдВрдиреЗ рдПрдХ рдмрдЧ рджреЗрдЦрд╛, рдпрд╣ рдХреЛрд░ рдореЗрдВ рдХрд╣рд╛ рдЧрдпрд╛ рдерд╛ рдХрд┐ IE9 рдореЗрдВ (рдФрд░ рд╡рд╣ рдмрд╕ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдерд╛) рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдкреИрдирд▓ рдмрд┐рд▓реНрдХреБрд▓ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдкрд╣рд▓реЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдореИрдВрдиреЗ рдПрдХ рд╕рдорд╕реНрдпрд╛ рдХреА рддрд▓рд╛рд╢ рд╢реБрд░реВ рдХреА, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдореНрдпреВрдЯреВрд▓ 1.2.x рдирд┐рдХрд▓рд╛ - IE9 рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди 1.3.x рд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ - рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЙрдбрд╝ рдЬрд╛рддрд╛ рд╣реИред рдЦреИрд░, рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╣рд┐рдЪрдХрд┐рдЪрд╛рд╣рдЯ рдХреЗ рдЗрд╕ рдЪрдорддреНрдХрд╛рд░ рдХрд╛ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ рдФрд░ рдЗрд╕реЗ рдбрд╛рд▓реЗрдВред рдореБрдЭреЗ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЖрдирдиреНрджрд┐рдд рдирд╣реАрдВ рд╣реЛрдирд╛ рдкрдбрд╝рд╛ - рд╡реЗ JxLib рдореЗрдВ рдмрдЧ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рд▓рдЧреЗ ред рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ 'рд░реБрдХреА рд╣реБрдИ' рд╣реИ рдФрд░ рдирд╡реАрдирддрдо рдЙрдкрд▓рдмреНрдз рд╕рдВрд╕реНрдХрд░рдг рдХреЗрд╡рд▓ рдореБрдЯреВрд▓ 1.2.x рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд рд╣реИред рдЙрд╕ рдХреНрд╖рдг рдХреЗ рдмрд╛рдж рд╕реЗ рдмрд╣реБрдд рд╕рдордп рдмреАрдд рдЪреБрдХрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЙрд╕ рдмрдХрд╡рд╛рд╕ рдХреЛрдб рдХреЛ, рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдореБрдЭреЗ рдЗрд╕ рдмрдЧ рдХреЛ рдкреИрдЪ рдХрд░рдирд╛ рдерд╛, рдореВрдЯреЛрд▓реНрд╕ рдФрд░ рдЗрд╕ рддрд░рд╣ рдХреА рдЪреАрдЬреЛрдВ рдореЗрдВ рдореЗрд░рд╛ рд╡рд┐рд╢реНрд╡рд╛рд╕ рддреЛрдбрд╝ рджрд┐рдпрд╛ред рдЕрдм, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ, рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдЬреЗрдПрд╕ рдХреЗ рд▓рд┐рдП рдпрд╣ рд░рд╡реИрдпрд╛ рдХрд╣рд╛рдВ рд╕реЗ рдЖрдпрд╛ рд╣реИред

рдФрд░ рдЕрдм рдореИрдВ рдХреБрдЫ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХрд╛ рдЬрд╡рд╛рдм рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ (рдРрд╕рд╛ рдХреНрдпреЛрдВ, рдФрд░ рдЕрдиреНрдпрдерд╛ рдирд╣реАрдВ)ред

1)
Console.log - рдореБрдЭреЗ рдЗрд╕рдХреА рдЙрдореНрдореАрдж рдирд╣реАрдВ рдереА, рдореИрдВрдиреЗ рдмрд╣реБрдд рдХреБрдЫ рджрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ред рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ (рдХрдВрд╕реЛрд▓.рд▓реЙрдЧ) рд╕реНрд╡рд░реВрдкрдг рдФрд░ рдХрдИ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдкрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдпрд╛рдж рдирд╣реАрдВ рд╣реЛрдЧрд╛ рдХрд┐ рдореИрдВрдиреЗ рдЖрдЦрд┐рд░реА рдмрд╛рд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрдм рдХрд┐рдпрд╛ рдерд╛ред рдПрдХ рдЪрд░ рдореЗрд░реЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ, рдФрд░ рдХрдВрд╕реЛрд▓ рдХреА рдкреВрд░реА рд╢рдХреНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП _d () рдХреЛ рдЬрдЯрд┐рд▓ рдХрд░рдирд╛ рд╣реИред рдорд╣реАрдиреЗ рдореЗрдВ рдПрдХ рдмрд╛рд░ рдЕрд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╣реИ (рдпрд╣ `рдХрдВрд╕реЛрд▓.рд▓реЙрдЧ` рдХреЗ рдкреНрд░рддрд┐рд╖реНрдард┐рдд 11 рдЕрдХреНрд╖рд░реЛрдВ рдХреЛ рд▓рд┐рдЦрдирд╛ рдЖрд╕рд╛рди рд╣реИ)ред

2)
AddEvent рдлрд╝рдВрдХреНрд╢рди _d рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рддреНрд░реБрдЯрд┐ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦреЗрдЧрд╛ред
- рдореБрдЭреЗ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рд╣реИ, рдпрд╣ рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдПрдХ DOM рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдЕрд╕реНрддрд┐рддреНрд╡ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕реЗ рдореБрдЦреНрдп рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдЖрдкрдиреЗ рдореБрдЭреЗ рдЖрд╢реНрд╡рд╕реНрдд рдХрд┐рдпрд╛ - рдореИрдВ рдЭреВрдареЗ рдЬреЛрдбрд╝ рджреВрдВрдЧрд╛ред

3)
рд╡реИрд░рд┐рдПрдмрд▓ рдХреЗ рд╡реИрд╢реНрд╡рд┐рдХ рд╕реНрдерд╛рди рдХрд╛ рдкреНрд░рджреВрд╖рдг рдмрд╣реБрдд рдЦрд░рд╛рдм рд╕реНрд╡рд░ рд╣реИред
- рдпрд╣рд╛рдБ рдЖрдк рд╕рд╣реА рд╣реИрдВ, рд▓реЗрдХрд┐рди рддреИрдпрд╛рд░ рдХреЗ рдЕрд▓рд╛рд╡рд╛ = []; рдореБрдЭреЗ рдХреБрдЫ рднреА рд╡реИрд╢реНрд╡рд┐рдХ рдирд╣реАрдВ рдорд┐рд▓ рд░рд╣рд╛ рд╣реИ :)

рдЦреИрд░, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрди рд╣реЛрд▓реАрд╡рд░реЛрдВ рдХреЛ рдЦрддреНрдо рдХрд░рдиреЗ рдФрд░ рдЬреЗрдПрд╕ рдХреЛрдб рдХреЗ рдПрдХ рдирдП рдмреИрдЪ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рдЖ рдЧрдпрд╛ рд╣реИред


//       -  3  (        )     /** * Function insert DOM element before some element * * @version 2012-11-06 * @param Object new_element * @param Object targetElement * @return void */ function insertBefore(new_element, targetElement) { targetElement.parentNode.insertBefore(new_element, targetElement); } /** * Function insert DOM element after some element * * @version 2012-11-06 * @param Object new_element * @param Object targetElement * @return void */ function insertAfter(new_element, targetElement) { var parent = targetElement.parentNode; //if the parents lastchild is the targetElement... if(parent.lastchild == targetElement) parent.appendChild(new_element); else parent.insertBefore(new_element, targetElement.nextSibling); } /** * Function make clone of income object * * @version 2012-11-07 * @param Object obj * @return Object */ function clone(obj) { if(obj == null || typeof(obj) != 'object') return obj; var temp = {}; for(var key in obj) temp[key] = clone(obj[key]); return temp; } //    DOM   ,    /** * Function return next element in dom object * * @version 2013-01-08 * @param Object obj * @return Object */ function getNext(obj) { obj = obj.nextSibling; if(!obj) return false; while(obj.nodeType != 1){ obj = obj.nextSibling; if(!obj) return false; } return obj; } //    DOM   ,    /** * Function return previous element in dom object * * @version 2013-02-13 * @param Object obj * @return Object */ function getPrevious(obj) { obj = obj.previousSibling; if(!obj) return false; while(obj.nodeType != 1){ obj = obj.previousSibling; if(!obj) return false; } return obj; } //  2  -     Cookies. C ,  ,    /** * Function new Cookies * * @version 2013-03-26 * @param string name * @param string value * @param string expires * @param string path * @return void */ function setCookies(name, value, expires, path) { if(!name || !value) return 0; if(!expires){ expires = new Date(); expires.setTime(expires.getTime() + (1000 * 86400 * 365)); //save 1 year } if(!path) path = '/'; // set Cookies document.cookie = name+'='+escape(value)+'; expires='+expires.toGMTString()+'; path='+path; } /** * Function return Cookies value by name * * @version 2013-03-26 * @param string name * @return void */ function getCookies(name) { var results = document.cookie.match ( '(^|;) ?' + name + '=([^;]*)(;|$)' ); if ( results ) return ( unescape ( results[2] ) ); else return null; } //      //    Ajax(params),      prototype /** * Ajax object * * Send request by post/get to some url * * @version 2013-02-13 * @param Object params * @return Object */ window.Ajax = function(params) { //    this.options = { // default url url: '', // default method method: 'get', // Is synchronous request? async: true, // in seconds timeout: 10000, // callback function, in default - empty function onComplete: function(){} }; // set config params this.setConfig(params); //     XMLHttpRequest    // initialize this.init(params); }; /** * Pablic methods */ window.Ajax.prototype = { /** * some internal params */ xml_http_request: null, timeout: null, // json|xml|text response:'json', //   ajax ,     /** * configure functionality */ setConfig: function(opt) { // set url if(opt.url != undefined) this.options.url = opt.url; // set method if(opt.method != undefined) this.options.method = opt.method; // set asynchronus param if(opt.async != undefined) this.options.async = opt.async; // set timeout if(opt.timeout != undefined) this.options.timeout = opt.timeout; // set callback functions if((opt.onComplete != undefined) && (typeof(opt.onComplete) == 'function')) this.options.onComplete = opt.onComplete; }, /** * Initialize XMLHTTPRequest */ init: function() { //   XMLHttpRequest // Cross-browser compatibility for browsers if (typeof XMLHttpRequest != 'undefined') { this.xml_http_request = new XMLHttpRequest(); } else{ try { this.xml_http_request = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { this.xml_http_request = new ActiveXObject("Microsoft.XMLHTTP"); } catch (E) { alert('Your browser don\'t support Ajax technology. Please download real browser :)'); } } } var self_ = this; //   (post/get), url, /  // open XMLHttpRequest this.xml_http_request.open(self_.options.method, self_.options.url, self_.options.async); /**  callback    * *   readyState : * 0 - Unitialized * 1 - Loading * 2 - Loaded * 3 - Interactive * 4 - Complete *  0-2   . * * self_.xml_http_request.status -    (200, 404  ) */ // set callback function for XMLHttpRequest this.xml_http_request.onreadystatechange = function(){ if((self_.xml_http_request.readyState == 4) && (self_.xml_http_request.status > 0)){ //    Ajax  (  ) // delete timeout clearTimeout(self_.timeout); //    ,       // JSON.parse -   JSON (  - bye-bye) if(self_.response == 'json') var response = JSON.parse(self_.xml_http_request.responseText); else{ if(self_.response == 'xml') var response = self_.xml_http_request.responseXML; else var response = self_.xml_http_request.responseText; } //    self_.options.onComplete(response); } } }, //       ,        /** * Set some headers if need */ setRequestHeader: function(name, value) { this.xml_http_request.setRequestHeader(name, value); }, //  Ajax   /** * Send request */ send: function(params) { this.xml_http_request.send(params); var self_ = this; //     ,         -    //   - 10  ,     // set timeout need for abort request this.timeout = setTimeout( function(){ self_.xml_http_request.abort(); }, this.options.timeout); }, //    ,         ,     (     :) ) /** * Abort request */ abort: function() { this.xml_http_request.abort(); } }   Ajax(): new Ajax({ url: '/index.php', timeout: 20000, method: 'post', onComplete: function(data){ alert(data);} }).send('qwerty=123'); 


рдкреБрдирд╢реНрдЪред рдЬреИрд╕рд╛ рдХрд┐ рд╡рд╛рджрд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд╕реНрд░реЛрдд ред рд▓реЗрдЦ рдЗрд╕рд▓рд┐рдП рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рддрд╛рдХрд┐ рд▓реЛрдЧ рд╕рдЪреНрдЪреЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рди рднреВрд▓реЗрдВ рдФрд░ рдмрд▓ рдХреЗ рдЙрдЬреНрдЬреНрд╡рд▓ рдкрдХреНрд╖ рдкрд░ рдЬрд╛рдПрдВ (рдХреБрдХреАрдЬрд╝ рднреА рдпрд╣рд╛рдВ рд╣реИрдВ :))ред

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


All Articles