shura1973
Silver Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору distortion Цитата: есть ли расширение/скрипт, позволяющий узнать размер файла по прямой ссылке, без скачивания? | букмаклет,где увидел уже не помню,дал бы ссылку,так что выкладываю сам код.. Get File Size Код: javascript:(function(){var formatSize=function(h){if(!h||isNaN(h=parseInt(h)))return'неизвестно';var kb=1024,mb=kb*kb,gb=mb*kb,add=' ('+h+' byte)';if(h<kb)return h+' B';if(h<mb)return(h/kb).toFixed(1)+' KiB'+add;if(h<gb)return(h/mb).toFixed(1)+' MiB'+add;return(h/gb).toFixed(1)+' GiB'+add};var formatDate=function(h){return h?new Date(h).toLocaleString():'неизвестно'};var responseTime=function(s){return Math.round((new Date()-s)/100)/10+' сек'};var getInfo=function(u,s){var jsc=('js'+Math.random()).replace('.','n'),ele=document.documentElement.appendChild(document.createElement('script'));window[jsc]=function(o){alert(o.ok&&o.headers?'Файл: '+u+'%5Cn%5CnВремя отклика: '+responseTime(s)+'%5Cn%5CnРазмер: '+formatSize(o.headers['content-length'])+'%5CnДата: '+formatDate(o.headers['last-modified'])+'%5Cn%5CnСтатус: '+o['status_code']+(o.headers['server']?'%5CnСервер: '+o.headers['server']:'')+(o.headers['content-type']?'%5CnТип: '+o.headers['content-type']:''):'Информация недоступна.');ele.parentNode.removeChild(ele);delete window[jsc]};ele.src='http://json-head.appspot.com/?url='+encodeURIComponent(u)+'&callback='+jsc};var getLink=function(){var ele,range,tmp,sel=window.getSelection(),str=sel.toString();if(str){range=sel.getRangeAt(0);ele=range.commonAncestorContainer;if(ele.nodeType==1){tmp=document.createElement('div');tmp.appendChild(range.cloneContents());ele=tmp.getElementsByTagName('a')[0]}else{while(ele.nodeName.toLowerCase()!='a'&&ele.parentNode)ele=ele.parentNode}};return(ele&&ele.href)||str.replace(/^%5Cs+|%5Cs+$/g,'')};var reqTimeout,notRun=true,url=getLink(),start=new Date();if(!/^https?:/i.test(url)){alert('Протокол не поддерживается:%5Cn%5Cn'+url);return};try{var req=new XMLHttpRequest();req.open('HEAD',url+'?',true);req.onreadystatechange=function(){if(this.readyState==4){clearTimeout(reqTimeout);if(this.status||this.getAllResponseHeaders()){alert('Файл: '+url+'%5Cn%5CnВремя отклика: '+responseTime(start)+'%5Cn%5CnРазмер: '+formatSize(this.getResponseHeader('Content-Length'))+'%5CnДата: '+formatDate(this.getResponseHeader('Last-Modified'))+'%5Cn%5CnЗаголовки:%5CnStatus: '+this.status+' '+this.statusText+'%5Cn'+this.getAllResponseHeaders())}else{notRun=getInfo(url,start)}}};req.send(null);reqTimeout=setTimeout(function(){req.abort()},10000)}catch(e){if(notRun)getInfo(url,start)}})() |
| Всего записей: 4952 | Зарегистр. 14-10-2007 | Отправлено: 15:00 30-01-2014 | Исправлено: shura1973, 15:01 30-01-2014 |
|