рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд░ рдЫрд╡рд┐рдпреЛрдВ рдХрд╛ рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рдХрд░рдирд╛: рд▓рд╕рджрд╛рд░ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рд╕реЗ рд▓рдбрд╝рдирд╛

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

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

рдХреЛрдб
var listen = function(element, event, fn) { return element.addEventListener(event, fn, false); }; listen(document, 'DOMContentLoaded', function() { var fileInput = document.querySelector('#file-input'); var listView = document.querySelector('#list-view'); listen(fileInput, 'change', function(event) { var files = fileInput.files; if (files.lenght == 0) { return; } for(var i = 0; i < files.length; i++) { generatePreview(files[i]); } fileInput.value = ""; }); var generatePreview = function(file) { var reader = new FileReader(); reader.onload = function(e) { var dataUrl = e.target.result; var li = document.createElement('LI'); var image = new Image(); image.width = 100; image.onload = function() { // some action here }; image.src = dataUrl; li.appendChild(image); listView.appendChild(li); }; reader.readAsDataURL(file); }; }); 



рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ 3648x2736 рдкрд┐рдХреНрд╕реЗрд▓ рдФрд░ 4 рдореЗрдЧрд╛рдмрд╛рдЗрдЯ рдХреА рдФрд╕рдд рдорд╛рддреНрд░рд╛ рдХреЛ рдорд╛рдкрдиреЗ рд╡рд╛рд▓реА рдЕрдЪреВрдХ рддрд╕реНрд╡реАрд░реЛрдВ рдХреЗ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред рд╕рд╛рде рд╣реА рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрд╛ рдПрдХ рд╕реЗрдЯ: рдХреНрд░реЛрдо (31.0), рдпреИрдВрдбреЗрдХреНрд╕ (13.12), рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ (26.0), рдФрд░ рдЖрдИрдИ (11.0.1)ред рдЦреИрд░, рд╕рд╛рдорд╛рдиреНрдп рдХрд╛рд░реНрдп рдкреНрд░рдмрдВрдзрдХ (8.1 рдЬреАрдд)ред

рдЗрд╕рд▓рд┐рдП, рдлрд╝реАрд▓реНрдб рдореЗрдВ 20 рдлрд╝реЛрдЯреЛ рдЪреБрдиреЗрдВред рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ:
рдмреНрд░рд╛рдЙрдЬрд╝рд░рдореЗрдореЛрд░реА рдЦрдкрдд рдПрдордмреА
рдХреНрд░реЛрдо994
Yandex1045
рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕1388
рдЖрдИрдИ1080


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

рдЗрд╕рд▓рд┐рдП, рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдирд┐рд░реНрдгрд╛рдпрдХ рд░реВрдк рд╕реЗ рд╣рдорд╛рд░реЗ рдЕрдиреБрдХреВрд▓ рдирд╣реАрдВ рд╣реИред рд╣рдореЗрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ ...

рд╢реЗрд▓ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓рд╛ рджреГрд╖реНрдЯрд┐рдХреЛрдг


рдореЗрд░рд╛ рдкрд╣рд▓рд╛ рд╡рд┐рдЪрд╛рд░ рдерд╛: тАЬрдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рдРрд╕рд╛ рдУрд╡рд░рд░рди рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ рд╕рднреА рдЪрд┐рддреНрд░реЛрдВ рдХреЛ рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рд╕реЗ рдЖрддрд╛ рд╣реИ? рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдХреНрд░рдорд┐рдХ рд░реВрдк рд╕реЗ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдЬрд╛рдП, рдЬрд┐рд╕рд╕реЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЛ рдЕрдкрдиреА рд╕рд╛рдВрд╕ рдереЛрдбрд╝реА рдкрдХрдбрд╝рдиреЗ рдХрд╛ рдореМрдХрд╛ рдорд┐рд▓реЗ? " рдЦреИрд░, рд╣рдо рд╕рдмрд╕реЗ рд╕рд░рд▓ рдХрддрд╛рд░ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рдХреЛрдб
 // ...    ... var queue = []; var isProcessing = false; listen(fileInput, 'change', function(event) { var files = fileInput.files; if (files.lenght == 0) { return; } for(var i = 0; i < files.length; i++) { queue.push(files[i]); } fileInput.value = ""; processQueue(); }); var processQueue = function() { if (isProcessing) { return; } if (queue.length == 0) { isProcessing = false; return; } isProcessing = true; file = queue.pop(); var reader = new FileReader(); reader.onload = function(e) { var dataUrl = e.target.result; var li = document.createElement('LI'); var image = new Image(); image.width = 100; image.src = dataUrl; li.appendChild(image); listView.appendChild(li); isProcessing = false; processQueue(); }; reader.readAsDataURL(file); }; 



рдкрд░рд┐рдгрд╛рдо (рдЙрд╕реА 20 рдлрд╝реЛрдЯреЛ рдкрд░):
рдмреНрд░рд╛рдЙрдЬрд╝рд░рдореЗрдореЛрд░реА рдЦрдкрдд рдПрдордмреА
рдХреНрд░реЛрдо979
Yandex1119
рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕1360
рдЖрдИрдИ399


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

рджреВрд╕рд░рд╛ рддрд░реАрдХрд╛


рдХреБрдЫ рд╢рд░реНрдорд┐рдВрджрдЧреА рдХреЗ рдПрдХ рд╕рддреНрд░ рдХреЗ рдмрд╛рдж, рд╡рд┐рдЪрд╛рд░ рдорди рдореЗрдВ рдЖрддрд╛ рд╣реИ: "рд╢рд╛рдпрдж рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЛ рдЕрдкрдиреА рд╕реНрдореГрддрд┐ рдореЗрдВ рд╡реНрдпрд╛рдкрдХ рдЪрд┐рддреНрд░ рд░рдЦрдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╣рдореЗрдВ рдХреЗрд╡рд▓ рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рдХреЗ рдЖрдХрд╛рд░ рдореЗрдВ рдПрдХ рдмрд╛рд░ рдЪрд┐рддреНрд░ рдХреЛ рд╕рд┐рдХреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ? рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рд╕рд╛рдорд╛рдиреНрдп рдЖрдИрдПрдордЬреА рдХреЗ рдмрдЬрд╛рдп рдХреИрдирд╡рд╛рд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдЬрд╣рд╛рдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рд┐рдХреБрдбрд╝реА рд╣реБрдИ рдЫрд╡рд┐ рдбрд╛рд▓рдиреА рд╣реИ? " рддреЛ рдХрд░ рд▓реЛ ред

рдХреЛрдб
 var queue = []; var isProcessing = false; listen(fileInput, 'change', function(event) { // ... }); var processQueue = function() { // ...       file = queue.pop(); var reader = new FileReader(); reader.onload = function(e) { var dataUrl = e.target.result; var li = document.createElement('LI'); var canvas = document.createElement('CANVAS'); var ctx = canvas.getContext('2d'); var image = new Image(); listView.appendChild(li); image.onload = function() { var newWidth = 100; var newHeight = image.height * (newWidth / image.width); ctx.drawImage(image, 0, 0, newWidth, newHeight); li.appendChild(canvas); }; image.src = dataUrl; isProcessing = false; processQueue(); }; reader.readAsDataURL(file); }; 



рдкрд░рд┐рдгрд╛рдо (рд╕рднреА 20 рдЪрд┐рддреНрд░):
рдмреНрд░рд╛рдЙрдЬрд╝рд░рдореЗрдореЛрд░реА рдЦрдкрдд рдПрдордмреА
рдХреНрд░реЛрдо188 (рдЪрд░рдо рд╕рдордп рдкрд░ рдпрд╣ ~ 800MB рддрдХ рдкрд╣реБрдВрдЪ рдЧрдпрд╛, рд▓реЗрдХрд┐рди рдЬрд▓реНрджреА рд╕реЗ рдЗрд╕реЗ рдлреЗрдВрдХ рджрд┐рдпрд╛)
Yandex201 (рдЪрд░рдо рд╕рдордп рдореЗрдВ рдпрд╣ ~ 1GB рддрдХ рдкрд╣реБрдВрдЪ рдЧрдпрд╛, рд▓реЗрдХрд┐рди рддреБрд░рдВрдд рдЗрд╕реЗ рдХреНрд░реЛрдо рдХреА рддрд░рд╣ рдлреЗрдВрдХ рджрд┐рдпрд╛ рдЧрдпрд╛)
рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕661 (рд╢рд┐рдЦрд░ ~ 900. рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдПрдХ рдФрд░ рдорд┐рдирдЯ рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, 300 рддрдХ рдлреЗрдВрдХ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ)
рдЖрдИрдИ103 (рд╢рд┐рдЦрд░ ~ 260)


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

рддреАрд╕рд░рд╛ рддрд░реАрдХрд╛


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

рдХреЛрдб
 // ...     var processQueue = function() { // ...     isProcessing = true; file = queue.pop(); var li = document.createElement('LI'); var canvas = document.createElement('CANVAS'); var ctx = canvas.getContext('2d'); var image = new Image(); listView.appendChild(li); image.onload = function() { var newWidth = 100; var newHeight = image.height * (newWidth / image.width); ctx.drawImage(image, 0, 0, newWidth, newHeight); URL.revokeObjectURL(image.src); li.appendChild(canvas); isProcessing = false; processQueue(); }; image.src = URL.createObjectURL(file); }; 



рдкрд░рд┐рдгрд╛рдо:
рдмреНрд░рд╛рдЙрдЬрд╝рд░рдореЗрдореЛрд░реА рдЦрдкрдд рдПрдордмреА
рдХреНрд░реЛрдо881
Yandex927
рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕140 (рдЪреЛрдЯреА ~ 860)
рдЖрдИрдИ36 (рд╢рд┐рдЦрд░ ~ 70)


рд╣рдореЗрдВ рдХреНрдпрд╛ рдорд┐рд▓рд╛? рдареАрдХ рд╣реИ, рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, IE рдореЗрдВ рдЙрддреНрдХреГрд╖реНрдЯ рдкрд░рд┐рдгрд╛рдоред рдПрдлрдПрдл рдореЗрдВ рдХрдо рдпрд╛ рдЬреНрдпрд╛рджрд╛ рд╕реНрд╡реАрдХрд╛рд░реНрдпред рд▓реЗрдХрд┐рди WebKit рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЗ рд╕рд╛рде, рд╡реЗ рд╡рд╛рдкрд╕ рдЙрдЫрд╛рд▓ рдХреЗ рд▓рд┐рдП рд▓рдЧ рд░рд╣реЗ рдереЗред рдирд┐рд╖реНрдкрдХреНрд╖рддрд╛ рдореЗрдВ, рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ, рд╕рднреА рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдореЗрдВ, рдЪрд┐рддреНрд░реЛрдВ рдХреЛ рд╕рдВрд╡реЗрджрдирд╛рдУрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╢реБрджреНрдз рд░реВрдк рд╕реЗ рддреЗрдЬреА рд╕реЗ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рд╢реБрд░реВ рд╣реБрдЖ, рд▓реЗрдХрд┐рди рдЙрд╕реА рд╕рдордп IE рдореЗрдВ рдЕрд▓реНрдкрдХрд╛рд▓рд┐рдХ рдлреНрд░реЗрдЬреЗрд╕ рдкреИрджрд╛ рд╣реБрдПред рдпрд╣ рднреА рд╕рдВрднрд╡ рд╣реИ рдХрд┐ FF рдФрд░ IE рдИрдорд╛рдирджрд╛рд░реА рд╕реЗ URL.revokeObjectURL () рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рддреБрд░рдВрдд рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдореБрдХреНрдд рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рд╡реЗрдмрдХрд┐рдЯ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЛ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рдордп рдЪрд╛рд╣рд┐рдП (рдпрд╣ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рд╡реЗ рдХрдо рдореЗрдореЛрд░реА рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреЗрдЬрд╝ рд╣реЛ рдЬрд╛рдПрдВ)ред рдЖрдк рджреЛ рддрд░реАрдХреЛрдВ рд╕реЗ рдЖрдЧреЗ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ: 1) рджреГрд╖реНрдЯрд┐рдХреЛрдгреЛрдВ рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░реЗрдВ - рд╡реЗрдмрдХрд┐рдЯ рдкрд░ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдореЗрдВ рджреВрд╕рд░реЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдкрд░ рд▓реМрдЯреЗрдВ (рдЗрд╕рдХреЗ рд╕рд╛рде рд╕рдм рдХреБрдЫ рд╕реНрдкрд╖реНрдЯ рд╣реИ - рдПрдХ рддрдХрдиреАрдХреА рдорд╛рдорд▓рд╛); рдФрд░ 2) рд╣рд░ рдЬрдЧрд╣ рддреАрд╕рд░реЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд▓рд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВред рдЪрд▓рд┐рдП рдЖрдЦрд┐рд░реА рд╡рд┐рдХрд▓реНрдк рдЖрдЬрдорд╛рддреЗ рд╣реИрдВ ...

рдЪреМрдерд╛ рджреГрд╖реНрдЯрд┐рдХреЛрдг (рдФрд░ рдЕрдВрддрд┐рдо): рдРрд╕реЗ рдФрд░ рдХреНрдпрд╛ рд╣реЛрдЧрд╛?


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

рдХреЛрдб
 //    var listen = function(element, event, fn) { return element.addEventListener(event, fn, false); }; listen(document, 'DOMContentLoaded', function() { var fileInput = document.querySelector('#file-input'); var listView = document.querySelector('#list-view'); var queue = []; var isProcessing = false; var image = new Image(); //     img var imgLoadHandler; listen(fileInput, 'change', function(event) { var files = fileInput.files; if (files.lenght == 0) { return; } for(var i = 0; i < files.length; i++) { queue.push(files[i]); } fileInput.value = ""; processQueue(); }); var processQueue = function() { if (isProcessing) { return; } if (queue.length == 0) { isProcessing = false; return; } isProcessing = true; file = queue.pop(); var li = document.createElement('LI'); var canvas = document.createElement('CANVAS'); var ctx = canvas.getContext('2d'); //      image.removeEventListener('load', imgLoadHandler, false); imgLoadHandler = function() { var newWidth = 100; var newHeight = image.height * (newWidth / image.width); ctx.drawImage(image, 0, 0, newWidth, newHeight); URL.revokeObjectURL(image.src); li.appendChild(canvas); isProcessing = false; setTimeout(processQueue, 200); //    }; listView.appendChild(li); listen(image, 'load', imgLoadHandler); image.src = URL.createObjectURL(file); }; }); 



рдкрд░реАрдХреНрд╖рдг:
рдмреНрд░рд╛рдЙрдЬрд╝рд░рдореЗрдореЛрд░реА рдЦрдкрдд рдПрдордмреА
рдХреНрд░реЛрдо103 (рд╢рд┐рдЦрд░ ~ 150)
Yandex113 (рд╢рд┐рдЦрд░ ~ 150, рдХреНрд░реЛрдорд┐рдпрдо рдХреА рддрд░рд╣)
рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕107 (рдЪреЛрдЯреА ~ 510)
рдЖрдИрдИ40 (рдФрд░ рдпрд╣ рдКрдкрд░ рдирд╣реАрдВ рдЙрдард╛ред рдЬреИрд╕реЗ рдХрд┐ рдХреЛрдИ рдХрд╛рдо рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВ рдЪрд▓ рд░рд╣рд╛ рдерд╛)


рдЙрд╕реА рд╕рдордп, рд╣рдо рдПрдХ рд╣реА рдЖрдХрд╛рд░ рдХреЗ 100 рдЪрд┐рддреНрд░реЛрдВ рдкрд░ рднреА рдкрд░реАрдХреНрд╖рдг рдХрд░реЗрдВрдЧреЗ:
рдмреНрд░рд╛рдЙрдЬрд╝рд░рдореЗрдореЛрд░реА рдЦрдкрдд рдПрдордмреА
рдХреНрд░реЛрдо98 (рд╢рд┐рдЦрд░ ~ 150)
Yandex150 (рдЪреЛрдЯреА ~ 180)
рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕104 (рд╢рд┐рдЦрд░ ~ 520)
рдЖрдИрдИ40 (рд╕рднреА рд╕рдорд╛рди 40 рдПрдордмреА!)


рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рд╕рдВрд╕рд╛рдзрд┐рдд рдЫрд╡рд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╡реГрджреНрдзрд┐ рд╕реЗ рдЦрдкрдд рдореЗрдВ рд╡реГрджреНрдзрд┐ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред рдпрд╣, рд╢рд╛рдпрдж, рдмрдВрдж рд╣реЛ рдЬрд╛рдПрдЧрд╛ред

рдирд┐рд╖реНрдХрд░реНрд╖


рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд╣реБрдд рдкрд╣рд▓реЗ рдЬрд╛рдВрдЪ рдХреЗ рдмрд╛рдж, рдХреБрдЫ рдмрд┐рдВрджреБ рдкрд░ рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдерд╛ рдХрд┐ рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдЕрддреНрдпрдзрд┐рдХ рд╕реНрдореГрддрд┐ рдХреЗ рдмрд┐рдирд╛ рдЗрд╕ рдЕрд╡рд╕рд░ рдХреЛ рдорд╣рд╕реВрд╕ рдХрд░рдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рдлрд┐рд░ рднреА, рдпрд╣ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдирд┐рд▓рдВрдмрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрджрд╕реВрд░рдд рд╣реИ [рдЬреЛ рдПрдХ рдмрд╛рд░ рдореЗрдВ 100 рдЪрд┐рддреНрд░ рдЕрдкрд▓реЛрдб рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ] рдЙрд╕рдХреА рдХрд╛рд▓реНрдкрдирд┐рдХ рдиреЗрдЯрдмреБрдХред рд▓реЗрдХрд┐рди рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдЗрди рд╕рдВрджреЗрд╣реЛрдВ рдХреЛ рджреВрд░ рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣рд╛ :)

рдЗрд╕рд▓рд┐рдП, рд╣рдордиреЗ рдХреБрдЫ рдмрд┐рдВрджреБрдУрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдмреА рд╣рд╛рд╕рд┐рд▓ рдХреАред рд╕рдордп рдХреА рд╕рдВрдЦреНрдпрд╛: DataURL рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рдмрд╣реБрдд рдЫреЛрдЯреЗ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдЪрд┐рддреНрд░реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╣реИ (рдмрдбрд╝реЗ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП, рдпрд╣ ObjectURL API рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдХреЗрд╡рд▓ рджреЛ рд╡рд┐рдзрд┐рдпрд╛рдБ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ)ред рдирдВрдмрд░ рджреЛ: рдЖрдкрдХреЛ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдЗрдореЗрдЬ рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рддреЗ рд╕рдордп рд╕рд╛рд╡рдзрд╛рди рд░рд╣рдирд╛ рд╣реЛрдЧрд╛ред рдирдВрдмрд░ рддреАрди: рдПрдХ рдмрд╛рд░ рдореЗрдВ рд╕рднреА рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рди рдХрд░реЗрдВред

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

рдХреНрдпрд╛ рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ рд╣рд╛рд░ рдЧрдпрд╛?

рдЪреЛрдЯреА рдХреА рдЦрдкрдд рдХреЗ рдмрд╛рд╡рдЬреВрдж рдЬреЛ рдмрд╛рдХреА рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╛рд╣рд░ рдЦрдбрд╝рд╛ рд╣реИ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕реНрдерд┐рддрд┐ рдЕрднреА рднреА рдХрд╛рдлреА рд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ (рдореИрдВрдиреЗ рдЗрд╕реЗ рдКрдкрд░ рдЙрд▓реНрд▓реЗрдЦ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ), рдорд╛рдк рдХреЗ рдмрд╛рдж рдПрдХ рдФрд░ 30 рд╕реЗрдХрдВрдб, рдореЗрдореЛрд░реА 60MB рддрдХ рдЧрд┐рд░ рдЧрдИ, рдЬреЛ рдХрд┐ рд╡реЗрдм-рдЖрдзрд╛рд░рд┐рдд рд▓реЛрдЧреЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрдо рд╣реИ; рдФрд░ рджреВрд╕рд░реА рдмрд╛рдд, рдпрд╣ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдЧрдВрднреАрд░ рдХрдореА рдХреА рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ, рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ рд╕рдордп-рд╕рдордп рдкрд░ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рджреМрд░рд╛рди рдореЗрдореЛрд░реА рдХреЛ рдорд┐рдЯрд╛ рджреЗрдЧрд╛ рдФрд░ рдЕрдВрдд рдореЗрдВ, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдкрдиреЗ рдЪрд░рдо рдкрд░ рднреА рдЗрддрдирд╛ рдирд╣реАрдВ рдЦрд╛рдПрдЧрд╛ред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд╣рдо рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВред

IE рдкрд░ рд╣рд░ рдХрд┐рд╕реА рдХреЗ рд╕рд╛рде рд░рд╣реЛ!

рдпрд╣ рдлрд┐рд░ рд╕реЗ рдПрдХ рдордЬрд╛рдХ рд╣реИ :) рд▓реЗрдХрд┐рди рдирд┐рд╖реНрдкрдХреНрд╖ рд░реВрдк рд╕реЗ рдмреЛрд▓рддреЗ рд╣реБрдП, рд╣рдореЗрдВ рдпрд╣ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ IE рдЕрдм рд╕рд╛рдорд╛рдиреНрдп рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд┐рд░реНрдл рдПрдХ рдЙрдкрдХрд░рдг рдирд╣реАрдВ рд╣реИ, рдмрд▓реНрдХрд┐ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдФрд░ рдЕрдзрд┐рдХ рдЙрдкрдпреБрдХреНрдд рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╣реИред

Yandex.Browser рдмрдбрд╝реЗ рднрд╛рдЗрдпреЛрдВ рд╕реЗ рдереЛрдбрд╝рд╛ рдкреАрдЫреЗ рд╣реИ?

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

рдФрд░ рдУрдкреЗрд░рд╛ рдХрд╣рд╛рдВ рд╣реИ?

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

UPD: 12 рд╡реАрдВ рдУрдкреЗрд░рд╛ рдореЗрдВ рд╕рднреА рдХреА рдЬрд╛рдБрдЪ рдХреАред рдкрд░рд┐рдгрд╛рдо рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реИрдВ: 3 рдЬреА (рдФрд░, рддрджрдиреБрд╕рд╛рд░, 4 рд╡реЗрдВ) рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рджреВрд╕рд░рд╛ рджреГрд╖реНрдЯрд┐рдХреЛрдг 500 рдПрдордмреА рд╢рд┐рдЦрд░ рдкрд░ рдФрд░ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдмрд╛рдж 300 рдПрдордмреА рдЦрд╛рддрд╛ рд╣реИред

рд▓реЗрдХрд┐рди рд╕рдлрд╛рд░реА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛?

рдЬреАрддрдиреЗ рдкрд░, рдпрд╣ рдПрдХ рджреБрд░реНрд▓рдн рдЬрд╛рдирд╡рд░ рд╣реИ, рд▓реЗрдХрд┐рди рдЦрд╕рдЦрд╕ тАЛтАЛрдкрд░ рдореИрдВрдиреЗ рдЕрдВрддрд┐рдо рд╕рдВрд╕реНрдХрд░рдг (рд╕рднреА 20 рддрд╕реНрд╡реАрд░реЛрдВ рдореЗрдВ) рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ред рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рджреМрд░рд╛рди, рдореЗрдореЛрд░реА рдХреА рдЦрдкрдд рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВ рдмрдврд╝реАред

рдореЛрдмрд╛рдЗрд▓ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛?

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

рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдХреЛрдИ рдЗрд╕реА рддрд░рд╣ рдХреЗ рд╢реЛрдз рдкрд░ рд╕рдордп рдмрд░реНрдмрд╛рдж рдирд╣реАрдВ рдХрд░рдиреЗ рдореЗрдВ рд▓реЗрдЦ рдХреА рдорджрдж рдХрд░рддрд╛ рд╣реИред рдФрд░ рдкрд┐рдЫрд▓реА рдЫреБрдЯреНрдЯрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдЖрдк,% рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо%!

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


All Articles