Follow along with the video below to see how to install our site as a web app on your home screen.
Примечание: This feature may not be available in some browsers.
Алгоритм хороший, но блин по String.fromCharCode можно понять как получить исходный код. Есть ли ещё какие варианты?
Помнится находил такой шифратор, ему даёшь исходный код, а он тебе крякозябры, причем не переименовывал и не убирал пробелы и пр. как офускатрор. А именно набор непонятных символов.
Просто копипастишь полученный текст в html страничку и всё раюотает, прям магия
//////////////////////////////////////////////////////////////////// // Pop-In Builder (c)2004-2007. iCoder.com All Rights Reserved. // ////////////////////////////////////////////////////////////////////
function winListener(eventName, fn, fnName) {
if (window.attachEvent) window.attachEvent("on" + eventName, fn);
else if (window.addEventListener) window.addEventListener(eventName, fn, false);
else eval( "if (window.on" + eventName + ") {" + "old_window_onEvent" + eventName + " = window.on" + eventName + ";" + "window.on" + eventName + " = function(){old_window_onEvent" + eventName + "(); fnName();}" + "} else window.on" + eventName + " = fnName;" );
}
function docListener(eventName, fn, fnName) {
if (document.attachEvent) document.attachEvent("on" + eventName, fn);
else if (document.addEventListener) document.addEventListener(eventName, fn, false);
else eval( "if (document.on" + eventName + ") {" + "old_window_onEvent" + eventName + " = document.on" + eventName + ";" + "document.on" + eventName + " = function(){old_window_onEvent" + eventName + "(); fnName();}" + "} else document.on" + eventName + " = fnName;" );
}
function iPop_close(pop_name) {
if(!pop_name) pop_name = "iCoder_POP1231968202";
DHTMLAPI_hide(pop_name);
}
function iPop1231968202_close() {
DHTMLAPI_hide("iCoder_POP1231968202");
}
function iPop1231968202_init0() {
if (!iPop1231968202_CookieCheck()) return;
DHTMLAPI_init();
iCoder_POP1231968202_Obj = DHTMLAPI_getRawObject("iCoder_POP1231968202");
iCoder_POP1231968202_move();
window.onscroll = iCoder_POP1231968202_move;
window.onresize = iCoder_POP1231968202_move;
}
function iPop1231968202_init1() {
if (!iPop1231968202_CookieCheck()) return;
DHTMLAPI_init();
iCoder_POP1231968202_delta = 16;
iCoder_POP1231968202_Obj = DHTMLAPI_getRawObject("iCoder_POP1231968202");
var theObj = iCoder_POP1231968202_Obj;
if (theObj && isCSS) theObj = theObj.style;
if (theObj && theObj.visibility == "hidden") return;
if (theObj && theObj.display == "none") {
theObj.display = "block";
theObj.position = "absolute";
}
DHTMLAPI_shiftTo(iCoder_POP1231968202_Obj, 0, 5000);
var center = DHTMLAPI_positionWindow(iCoder_POP1231968202_Obj, true);
iCoder_POP1231968202_x = center[0];
iCoder_POP1231968202_y = center[1];
var w_scroll = DHTMLAPI_getScrollWindow();
var start_y = parseInt((w_scroll[1] - iCoder_POP1231968202_y - DHTMLAPI_getObjectHeight(iCoder_POP1231968202_Obj) - 100) / 100) * 100 + iCoder_POP1231968202_y;
DHTMLAPI_shiftTo(iCoder_POP1231968202_Obj, iCoder_POP1231968202_x, start_y);
iCoder_POP1231968202_dropstart = setInterval("iCoder_POP1231968202_drop()", 50);
}
function iCoder_POP1231968202_move() {
if (window.iCoder_POP1231968202_timeout) clearTimeout(window.iCoder_POP1231968202_timeout);
if (!iCoder_POP1231968202_Obj) return;
var theObj = iCoder_POP1231968202_Obj;
if (theObj && isCSS) theObj = theObj.style;
if (theObj && theObj.visibility == "hidden") return;
if (theObj && theObj.display == "none") {
theObj.display = "block";
theObj.position = "absolute";
}
DHTMLAPI_positionWindow(iCoder_POP1231968202_Obj);
window.iCoder_POP1231968202_timeout = setTimeout("iCoder_POP1231968202_move()", 100);
}
function DHTMLAPI_positionWindow(elemID, positionOnly) {
var obj = DHTMLAPI_getRawObject(elemID);
var position = obj.getAttribute("pos");
var scrollX = 0, scrollY = 0;
if (document.body && typeof(document.body.scrollTop) != "undefined") {
scrollX += document.body.scrollLeft;
scrollY += document.body.scrollTop;
if (0 == document.body.scrollTop && document.documentElement && typeof(document.documentElement.scrollTop) != "undefined") {
scrollX += document.documentElement.scrollLeft;
scrollY += document.documentElement.scrollTop;
}
}
else if (typeof(window.pageXOffset) != "undefined") {
scrollX += window.pageXOffset;
scrollY += window.pageYOffset;
}
var x = Math.round((DHTMLAPI_getInsideWindowWidth( ) / 2) - (DHTMLAPI_getObjectWidth(obj) / 2)) + scrollX;
var y = Math.round((DHTMLAPI_getInsideWindowHeight( ) / 2) - (DHTMLAPI_getObjectHeight(obj) / 2)) + scrollY;
var shift_position = parseInt(0);
if (isNaN(shift_position)) shift_position = 0;
switch (position) {
case "tc" : y = scrollY + shift_position;
break;
case "tl" : y = scrollY + shift_position;
x = scrollX + shift_position;
break;
case "tr" : y = scrollY + shift_position;
x = Math.round(DHTMLAPI_getInsideWindowWidth( ) - DHTMLAPI_getObjectWidth(obj)) + scrollX - shift_position;
break;
case "ml" : x = scrollX + shift_position;
break;
case "mr" : x = Math.round(DHTMLAPI_getInsideWindowWidth( ) - DHTMLAPI_getObjectWidth(obj)) + scrollX - shift_position;
break;
case "bc" : y = Math.round(DHTMLAPI_getInsideWindowHeight( ) - DHTMLAPI_getObjectHeight(obj)) + scrollY - shift_position;
break;
case "bl" : y = Math.round(DHTMLAPI_getInsideWindowHeight( ) - DHTMLAPI_getObjectHeight(obj)) + scrollY - shift_position;
x = scrollX + shift_position;
break;
case "br" : y = Math.round(DHTMLAPI_getInsideWindowHeight( ) - DHTMLAPI_getObjectHeight(obj)) + scrollY - shift_position;
x = Math.round(DHTMLAPI_getInsideWindowWidth( ) - DHTMLAPI_getObjectWidth(obj)) + scrollX - shift_position;
break;
}
if (!positionOnly) DHTMLAPI_shiftTo(obj, x, y);
return [x, y];
}
function iCoder_POP1231968202_drop() {
var y = DHTMLAPI_getObjectTop(iCoder_POP1231968202_Obj);
if ( iCoder_POP1231968202_y > y ) DHTMLAPI_shiftTo(iCoder_POP1231968202_Obj, iCoder_POP1231968202_x, 50 + y);
else {
clearInterval(iCoder_POP1231968202_dropstart);
iCoder_POP1231968202_vibrostart = setInterval("iCoder_POP1231968202_vibro()", 40);
}
}
function iCoder_POP1231968202_vibro() {
var y = DHTMLAPI_getObjectTop(iCoder_POP1231968202_Obj);
DHTMLAPI_shiftTo(iCoder_POP1231968202_Obj, iCoder_POP1231968202_x, y - iCoder_POP1231968202_delta);
if (iCoder_POP1231968202_delta < 0) iCoder_POP1231968202_delta += 4;
iCoder_POP1231968202_delta *= - 1;
if (iCoder_POP1231968202_delta == 0) {
clearInterval(iCoder_POP1231968202_vibrostart);
iCoder_POP1231968202_move();
window.onscroll = iCoder_POP1231968202_move;
window.onresize = iCoder_POP1231968202_move;
}
}
function DHTMLAPI_hide(obj) {
var theObj = DHTMLAPI_getObject(obj);
if (theObj) theObj.visibility = "hidden";
}
function DHTMLAPI_getRawObject(obj) {
var theObj;
if (typeof obj == "string") {
if (isW3C) theObj = document.getElementById(obj);
else if (isIE4) theObj = document.all(obj);
else if (isNN4) theObj = DHTMLAPI_seekLayer(document, obj);
}
else theObj = obj;
return theObj;
}
function DHTMLAPI_shiftTo(obj, x, y) {
var theObj = DHTMLAPI_getObject(obj);
if (theObj) {
if (isCSS) {
var units = (typeof theObj.left == "string") ? "px" : 0;
theObj.left = x + units;
theObj.top = y + units;
}
else if (isNN4) theObj.moveTo(x, y);
}
}
function DHTMLAPI_getScrollWindow() {
var scrollX = 0, scrollY = 0;
if (document.body && typeof(document.body.scrollTop) != "undefined") {
scrollX += document.body.scrollLeft;
scrollY += document.body.scrollTop;
}
else if (typeof(window.pageXOffset) != "undefined") {
scrollX += window.pageXOffset;
scrollY += window.pageYOffset;
}
return [scrollX, scrollY];
}
function DHTMLAPI_getObjectHeight(obj) {
var elem = DHTMLAPI_getRawObject(obj);
var result = 0;
if (elem.offsetHeight) result = elem.offsetHeight;
else if (elem.clip && elem.clip.height) result = elem.clip.height;
else if (elem.style && elem.style.pixelHeight) result = elem.style.pixelHeight;
return parseInt(result);
}
function DHTMLAPI_getObjectTop(obj) {
var elem = DHTMLAPI_getRawObject(obj);
var result = 0;
if (document.defaultView) {
var style = document.defaultView;
var cssDecl = style.getComputedStyle(elem, "");
result = cssDecl.getPropertyValue("top");
}
else if (elem.currentStyle) result = elem.currentStyle.top;
else if (elem.style) result = elem.style.top;
else if (isNN4) result = elem.top;
return parseInt(result);
}
function DHTMLAPI_getObject(obj) {
var theObj = DHTMLAPI_getRawObject(obj);
if (theObj && isCSS) theObj = theObj.style;
return theObj;
}
function DHTMLAPI_seekLayer(doc, name) {
var theObj;
for (var i = 0; i < doc.layers.length; i++) {
if (doc.layers[i].name == name) {
theObj = doc.layers[i];
break;
}
if (doc.layers[i].document.layers.length > 0) theObj = DHTMLAPI_seekLayer(document.layers[i].document, name);
}
return theObj;
}
function DHTMLAPI_getInsideWindowWidth( ) {
if (window.innerWidth) return window.innerWidth;
else if (isIE6CSS) return document.body.parentElement.clientWidth;
else if (document.body && document.body.clientWidth) return document.body.clientWidth;
return 0;
}
function DHTMLAPI_getInsideWindowHeight( ) {
if (window.innerHeight) return window.innerHeight;
else if (isIE6CSS) return document.body.parentElement.clientHeight;
else if (document.body && document.body.clientHeight) return document.body.clientHeight;
return 0;
}
function DHTMLAPI_getObjectWidth(obj) {
var elem = DHTMLAPI_getRawObject(obj);
var result = 0;
if (elem.offsetWidth) result = elem.offsetWidth;
else if (elem.clip && elem.clip.width) result = elem.clip.width;
else if (elem.style && elem.style.pixelWidth) result = elem.style.pixelWidth;
return parseInt(result);
}
function DHTMLAPI_init( ) {
if (document.images) {
isCSS = (document.body && document.body.style) ? true : false;
isW3C = (isCSS && document.getElementById) ? true : false;
isIE4 = (isCSS && document.all) ? true : false;
isNN4 = (document.layers) ? true : false;
isIE6CSS = (document.compatMode && document.compatMode.indexOf("CSS1") >= 0) ? true : false;
}
}
function iPop1231968202_start() {
setTimeout("iPop1231968202_init1()", 500);
}
winListener("load", iPop1231968202_start, "iPop1231968202_start");
function iPop1231968202_start() {
setTimeout("iPop1231968202_init1()", 500);
}
winListener("load", iPop1231968202_start, "iPop1231968202_start");