помогите с Javascript
| |
Maxik | Дата: Вт, 26 Фев 2013, 19:04 | Сообщение # 1 |
Сообщений: 23
Награды: 0
Репутация: 0
Статус: Offline
|
Всем доброго времени суток... у меня есть скрипт(писал его не я), он, как бы так сказать, выдран отсюда http://media.io/ru/ Код function load(b,c) { var d=document,f="script",a=d.createElement(f),e=2166136261,g=b.length,h=c,i=/=\?/,d=d.body; if(i.test(b)) { for(;g--;) e=e*16777619^b.charCodeAt(g); window[f+=e<0?-e:e]=function() { h.apply(h,arguments); delete window[f] }; b=b.replace(i,"="+f); c=0 } a.onload=a.onreadystatechange=function() { if(/de|m/.test(a.readyState||"m")) { try { c&&c(); d.removeChild(a); for(c in a) delete a[c] } catch(b) { window.console&&console.log(b) } } }; a.src=b; setTimeout( function() { d.appendChild(a) }, 0) }; var gaSiteSpeedSampleRate = 10; load ( "//www.google-analytics.com/ga.js", function() { try { _gat._anonymizeIp(); for ( var a=_gat._createTracker("UA-7427410-24","t"), c="abcsok,alot,aolsvc,auone,babylon,bigseekpro,bingj,blingo,blogsearch.google,charter,comcast,conduit,cuil,com.com,daemon-search,dir. m o b i,duckduckgo,earthlink,friendfeed,home.nl,icerocket,icq,incredimail,info.co.uk,mail.ru,metager2,mycricket,mytelus,nifty,ninemsn,oneview,oran ge.co,peoplepc,reddit,reference,semager,startpagina,sweetim,t-online,twitter,uluble,vinden,virginmedia,wibeez+q|ixquick,netzero,qip.ru,ti s ca li+query|att.net+string|orange.es+buscar|aliceadsl,rr.com+qs|alicesuche,gougou,technorati+search|avantfind+Keywords|mister-wong+keywords |del icious+p|info.com+qkw|sky+term|myspace+qry|gmx,web.de+su|soso+w|ukr.net+search_query|opendns+url|baidu,niuhu+bs|baidu,niuhu+word".spli t("|") , d=c.length; d--; ) for ( var b=c[d].split(/[,+]/), e=b.length-1, f=e; f--; ) a._addOrganic(b[f],b[e]); a._setDetectFlash(false); a._setDetectTitle(false); a._setAllowAnchor(true); a._setAllowHash(false); a._setVisitorCookieTimeout(5270400000); a._setSiteSpeedSampleRate(window.gaSiteSpeedSampleRate||0); a._trackPageview((window.gaPrefix||'')+location.pathname.replace(/;jsessionid=[^?]+/,'')) } catch(g){} } ); load("/resources/js/media-8badbecb19bd69f7f6da0c7dcc3bdf9dc8a26b87.js", function() { var mobile = /IEMobile|Windows CE|NetFront|PlayStation|PLAYSTATION|like Mac OS X|MIDP|UP\.Browser|Symbian|Nintendo|Android/, staticUploadPattern = new RegExp('MSIE [78]|Opera|WebKit|' + mobile.source), supportedExtensions = /\.(bz|bz2|gz|tar|tbz|tbz2|tgz|zip|bak|part|download|crdownload|partial|dtapart|m4r|stm|dsm|voc|m4b|rm|wav|wv|far|med|mdl|tta|dmf|aiff|mtm|xm |mod|ac3|ram|ptm|qcp|aifc|rbs|mpga|ams|vqf|dts|it|mt2|s3m|dbm|amf|mp4|au|flac|umx|psm|mp2|ape|shn|mid||ra|wma|669|3ga|wave|asf|aif|mp3|3g p |u lt|m4a|gsm|ogg|qcelp|mpc|mp4a|3g2|amr|aac|spx|okt|3gpp|caf|mus|midi|speex)$/i;
var app = {
stalling: 0, previousProgress: -1, identifyCalls: {}, uploadStarted: 0, staticUpload: false, urls: { progress: 'http://media.io/progress.jsp', staticProgress: 'http://media.io/staticprogress.jsp', conversion: '/api/Conversion/start', status: '/api/Status/uploads', identify: '/api/Identify/upload', help: { upload: '/help/upload/' } },
fileChosen: function() { var fileChosen = false; $('#upload input:file').each(function() { fileChosen = fileChosen || $(this).val(); }); return fileChosen; }, bindFile: function() { $('#upload input:file').change(function() { var extMatch = /\.(.+)$/.exec($(this).val()); if (extMatch && !supportedExtensions.test($(this).val())) { location.href = app.urls.help.upload; } }); },
bindUpload: function() { $('#uploadButton').click(function() { if (app.fileChosen()) { $(this).unbind().click(function() { return false; }); app.uploadStarted = new Date().getTime(); $('form').submit(); window.setTimeout(app.status, 1000); } return false; }); },
bindFormat: function() { $('#format input').click(function() { if (/wav/.test($('#format input:checked').val())) { $('#quality').slideUp(250).find('input').eq(0).attr('checked', 'checked').click(); } else { $('#quality').slideDown(250).reveal().find('input').attr('disabled', ''); } if (app.staticUpload && app.fileChosen() && $('#quality input:checked').val()) { $('#startconversion').reveal(); } }); }, bindQuality: function() { $('#quality input').one('click', function() { if (app.staticUpload && (!app.fileChosen() || !$('#format input:checked').val())) { return; } $('#startconversion').reveal(); }); },
bindConvert: function() { $('#convert').one('click', function() { var format = $('#format input:checked').val(); var quality = $('#quality input:checked').val(); if (format && quality) { $(this).attr('disabled', 'disabled'); $.ajax({ error: function() { $('#convert').attr('disabled', ''); app.bindConvert(); }, success: function() { location.href = app.urls.progress; }, data: { format: format, quality: quality }, dataType: 'json', url: app.urls.conversion }); } return false; }); }, bindFormatsLink: function() { $('#formatslink').click(function() { $('#formats').slideToggle(250); $(document.body).scrollTo(250); return false; }); },
init: function() { if (staticUploadPattern.test(navigator.userAgent)) { app.staticUpload = true; $('#redirect').val(mobile.test(navigator.userAgent) ? app.urls.staticProgress : app.urls.progress); $('#upload input:file').change(function() { if ($(this).val() && $('#format input:checked').val() && $('#quality input:checked').val()) { $('#startconversion').reveal(); } }); app.bindConvert = function() { $('#convert').click(function() { var format = $('#format input:checked').val(); var quality = $('#quality input:checked').val(); if (app.fileChosen() && format && quality) { $(this).attr('disabled', 'disabled'); var uploadForm = $('form').eq(0); uploadForm.attr('action', [ uploadForm.attr('action'), '?static=1&format=', format, '&quality=', quality, '&redirect=', escape($('#redirect').val()) ].join('')).submit(); } return false; }); }; $('#format, #quality').removeClass('blur'); $('#uploadButton').parent().remove(); } else { $('#static').remove(); $('#redirect').val(app.urls.progress); $('#format, #quality').find('input').attr('disabled', 'disabled'); }
app.bindFile(); app.bindUpload(); app.bindFormat(); app.bindQuality(); app.bindConvert(); app.bindFormatsLink(); },
animateUploadProgress: function(data) { var queue = $('#upload').empty(); $.each(data, function(idx, val) {
var props = { name: val.name, size: $.readableFileSize(val.size) };
queue.append($.mustache($(val.progress === 1.0 ? '#uploadedtemplate' : '#uploadingtemplate').html(), props));
if (val.size > 0) {
var currUpload = $('#upload > div').eq(idx);
var uploadBackgroundWidth = currUpload.find('div:last').innerWidth(), uploadBackgroundHeight = currUpload.find('div:last').innerHeight(); var uploadOverlay = currUpload.find('div:first').css('height', uploadBackgroundHeight);
var estimatedUploadTime = Math.round((new Date().getTime() - app.uploadStarted) / val.progress); var remainingTime = estimatedUploadTime - Math.round(estimatedUploadTime * val.progress); uploadOverlay.css('clip', 'rect(0px ' + Math.round(val.progress * uploadBackgroundWidth) + 'px ' + uploadBackgroundHeight + 'px 0px)'). animate({ clip: 'rect(0px ' + uploadBackgroundWidth + 'px ' + uploadBackgroundHeight + 'px 0px)' }, remainingTime, 'linear'); } }); },
status: function() { $.ajax({ success: function(data) { app.animateUploadProgress(data);
var uploadComplete = data.length && data[0].name && data[0].size > 0; var maxProgress = 0; var nextIdentifyCall;
$.each(data, function(idx, val) { if (!val.format && (val.size > 16384 || val.progress === 1.0) && !nextIdentifyCall) { nextIdentifyCall = app.identifyCalls[val.cleanName] ? false : val.cleanName; }
if (nextIdentifyCall || !val.format || val.progress < 1.0) { uploadComplete = false; maxProgress = Math.max(maxProgress, val.progress); } });
if (nextIdentifyCall) { window.setTimeout(function() { app.identify(nextIdentifyCall); }, 100); } else { if (!uploadComplete) { if (maxProgress === app.previousProgress) { ++app.stalling; } else if (maxProgress > app.previousProgress) { app.stalling = 0; } if (app.stalling < 10) { app.previousProgress = maxProgress; window.setTimeout(app.status, 3000); } else { location.href = app.urls.help.upload; } } }
if (uploadComplete) { $('#format').reveal().find('input').attr('disabled', ''); } }, error: function() { window.setTimeout(app.status, 3000); }, dataType: 'json', url: app.urls.status, cache: false }); },
identify: function(cleanName) { app.identifyCalls[cleanName] = true; $.ajax({ success: function() { window.setTimeout(app.status, 100); }, error: function() { window.setTimeout(app.status, 1000); }, data: { cleanName: cleanName }, dataType: 'json', type: 'post', url: app.urls.identify }); } };
window.jQuery && jQuery(app.init); }); это(как я понимаю) онлайн конвертер... хочу разобратся как работает чтобы вставить в проект... помогите плиз... заранее спасибо.
Сообщение отредактировал Maxik - Вт, 26 Фев 2013, 19:28 |
|
|
|
seaman | Дата: Вт, 26 Фев 2013, 20:17 | Сообщение # 2 |
![seaman](/avatar/33/290422.jpg) Гуру
Сообщений: 1748
Награды: 10
Репутация: 660
Статус: Offline
|
Цитата хочу разобратся как работает Это не JS Юнити. Так что хотите - разбирайтесь!
|
|
|
|
Maxik | Дата: Вт, 26 Фев 2013, 21:09 | Сообщение # 3 |
Сообщений: 23
Награды: 0
Репутация: 0
Статус: Offline
|
Цитата (seaman) Это не JS Юнити. А что тогда? Цитата (seaman) Так что хотите - разбирайтесь! если бы мог - разобрался бы...
|
|
|
|
seaman | Дата: Вт, 26 Фев 2013, 22:44 | Сообщение # 4 |
![seaman](/avatar/33/290422.jpg) Гуру
Сообщений: 1748
Награды: 10
Репутация: 660
Статус: Offline
|
Тогда раздел не тот. Раздела по JavaScript тут нет, так что наиболее близко - ЭТО Ну и еще - переписать под Юнити не получится.
|
|
|
|
Maxik | Дата: Ср, 27 Фев 2013, 18:48 | Сообщение # 5 |
Сообщений: 23
Награды: 0
Репутация: 0
Статус: Offline
|
Цитата (seaman) переписать под Юнити не получится очень жаль... спасибо...Добавлено (27.02.2013, 18:48) --------------------------------------------- ладно, а обращение к этому сайту с нужными данными сделать можно?
|
|
|
|
Левша | Дата: Ср, 27 Фев 2013, 20:47 | Сообщение # 6 |
![Левша](/avatar/59/970884.jpg) Черный Волк
Сообщений: 7257
Награды: 30
Репутация: 3313
Статус: Offline
|
В Юнити можно в коде взаимодействовать с Js сайта.
X.cor.R (Prologue)
|
|
|
|
Maxik | Дата: Ср, 27 Фев 2013, 20:51 | Сообщение # 7 |
Сообщений: 23
Награды: 0
Репутация: 0
Статус: Offline
|
Цитата (Левша) В Юнити можно в коде взаимодействовать с Js сайта. это приятно слышать... но вопрос в другом: КАК???
|
|
|
|
Левша | Дата: Ср, 27 Фев 2013, 22:47 | Сообщение # 8 |
![Левша](/avatar/59/970884.jpg) Черный Волк
Сообщений: 7257
Награды: 30
Репутация: 3313
Статус: Offline
|
Посмотри в вебБилде html файл + скиптРеференсы на эту тему. Я не помню...
X.cor.R (Prologue)
|
|
|
|
|