Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.08.2015, 19:14
Новичок на форуме
Отправить личное сообщение для Горностай Посмотреть профиль Найти все сообщения от Горностай
 
Регистрация: 11.08.2015
Сообщений: 2

Что делает этот скрипт?
Уважаемые коллеги! Я JS-начинающий. Начинаю с того, что стараюсь разобраться в скриптах, которые попадаются на глаза. Так вот не так давно попался такой вот скрипт (простите за форматирование):
<!DOCTYPE html><html><head lang="en"><meta charset="UTF-8"><title></title></head><script>var a1256157352=function(a){if(a&&a.data&&a.data.a540125352&&a.data.a1204587773)if("a939675136"==a.data.a1204587773){if(!a.data.a2918445836)return"a2918445836 required";for(var e in a.data.a2918445836)a.data.a2918445836[e]&&a1869877677(e,a.data.a2918445836[e])}else if("a2878600925"==a.data.a1204587773){if(!a.data.a3029222531||!a.data.a39501098)return"a3029222531 and a39501098 required";var t={};a.data.a3029222531.forEach(function(a){var e=a,n=a470276301(a);null===n&&(n=void 0),t[e]=n}),a.source.postMessage({a540125352:1,a1204587773:"a2878600925",a39501098:a.data.a39501098,a2918445836:t},"*")}},a1869877677=function(a,e){localStorage&&localStorage.setItem(a,e),a2475012037(a,e)},a470276301=function(a){var e=a1655291064(a);return e?e:localStorage?localStorage.getItem(a):void 0},a1655291064=function(a){var e=document.cookie.match(new RegExp("(?:^|; )"+a.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g,"\\$1")+"=([^;]*)"));return e?decodeURIComponent(e[1]):void 0},a2475012037=function(a,e,t){t=t||{};var n=t.a2593941731?t.a2593941731:"%COOKIELIFE%";if("number"==typeof n&&n){var o=new Date;o.setTime(o.getTime()+1e3*n),n=t.a2593941731=o}n&&n.toUTCString&&(t.a2593941731=n.toUTCString()),e=encodeURIComponent(e);var r=a+"="+e;for(var d in t){r+="; "+d;var i=t[d];i!==!0&&(r+="="+i)}document.cookie=r};window.onload=function(){window.addEventListener?addEventListener("message",a1256157352,!1):attachEvent("onmessage",a1256157352),window.parent.postMessage({a540125352:1,a1204587773:"a4290278612"},"*")};</script><body><span id="a2287596422"></span></body></html>



Подозреваю, что он работает с данными в cookie. Но что он делает?

Последний раз редактировалось Горностай, 11.08.2015 в 19:20.
Ответить с цитированием
  #2 (permalink)  
Старый 11.08.2015, 19:18
Аватар для KosBeg
Профессор
Отправить личное сообщение для KosBeg Посмотреть профиль Найти все сообщения от KosBeg
 
Регистрация: 22.05.2015
Сообщений: 384

Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[js]
... ваш код...
[/js]


О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.
Ответить с цитированием
  #3 (permalink)  
Старый 11.08.2015, 19:20
Аватар для KosBeg
Профессор
Отправить личное сообщение для KosBeg Посмотреть профиль Найти все сообщения от KosBeg
 
Регистрация: 22.05.2015
Сообщений: 384

Так вот лучше =)
в общем по событию "message" скрипт работает с куками и с localStorage
/**
 * @param {Object} evt
 * @return {?}
 */
var a1256157352 = function(evt) {
  if (evt && (evt.data && (evt.data.a540125352 && evt.data.a1204587773))) {
    if ("a939675136" == evt.data.a1204587773) {
      if (!evt.data.a2918445836) {
        return "a291844 5836 required";
      }
      var match;
      for (match in evt.data.a2918445836) {
        if (evt.data.a2918445836[match]) {
          a1869877677(match, evt.data.a2918445836[match]);
        }
      }
    } else {
      if ("a2878600925" == evt.data.a1204587773) {
        if (!evt.data.a3029222531 || !evt.data.a39501098) {
          return "a3029222531 and a39501098 required";
        }
        var statesData = {};
        evt.data.a3029222531.forEach(function(storageKey) {
          var unlock = storageKey;
          var data = a470276301(storageKey);
          if (null === data) {
            data = void 0;
          }
          statesData[unlock] = data;
        });
        evt.source.postMessage({
          a540125352 : 1,
          a1204587773 : "a2878600925",
          a39501098 : evt.data.a39501098,
          a2918445836 : statesData
        }, "*");
      }
    }
  }
};
/**
 * @param {string} name
 * @param {string} tabId
 * @return {undefined}
 */
var a1869877677 = function(name, tabId) {
  if (localStorage) {
    localStorage.setItem(name, tabId);
  }
  a2475012037(name, tabId);
};
/**
 * @param {?} storageKey
 * @return {?}
 */
var a470276301 = function(storageKey) {
  var value = a1655291064(storageKey);
  return value ? value : localStorage ? localStorage.getItem(storageKey) : void 0;
};
/**
 * @param {string} key
 * @return {?}
 */
var a1655291064 = function(key) {
  /** @type {(Array.<string>|null)} */
  var matches = document.cookie.match(new RegExp("(?:^|; )" + key.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, "\\$1") + "=([^;]*)"));
  return matches ? decodeURIComponent(matches[1]) : void 0;
};
/**
 * @param {string} keepData
 * @param {string} key
 * @param {Object} set
 * @return {undefined}
 */
var a2475012037 = function(keepData, key, set) {
  set = set || {};
  var f = set.a2593941731 ? set.a2593941731 : "%COOKIELIFE%";
  if ("n umber" == typeof f && f) {
    /** @type {Date} */
    var d = new Date;
    d.setTime(d.getTime() + 1E3 * f);
    /** @type {Date} */
    f = set.a2593941731 = d;
  }
  if (f) {
    if (f.toUTCString) {
      set.a2593941731 = f.toUTCString();
    }
  }
  /** @type {string} */
  key = encodeURIComponent(key);
  /** @type {string} */
  var str = keepData + "=" + key;
  var i;
  for (i in set) {
    str += "; " + i;
    var id = set[i];
    if (id !== true) {
      str += "=" + id;
    }
  }
  /** @type {string} */
  document.cookie = str;
};
/**
 * @return {undefined}
 */
window.onload = function() {
  if (window.addEventListener) {
    addEventListener("message", a1256157352, false);
  } else {
    attachEvent("onmessage", a1256157352);
  }
  window.parent.postMessage({
    a540125352 : 1,
    a1204587773 : "a4290278612"
  }, "*");
};

Последний раз редактировалось KosBeg, 11.08.2015 в 19:29.
Ответить с цитированием
  #4 (permalink)  
Старый 11.08.2015, 19:22
Новичок на форуме
Отправить личное сообщение для Горностай Посмотреть профиль Найти все сообщения от Горностай
 
Регистрация: 11.08.2015
Сообщений: 2

Спасибо.
Ответить с цитированием
  #5 (permalink)  
Старый 11.08.2015, 19:39
Аватар для KosBeg
Профессор
Отправить личное сообщение для KosBeg Посмотреть профиль Найти все сообщения от KosBeg
 
Регистрация: 22.05.2015
Сообщений: 384

Сообщение от Горностай
Спасибо.
пожалуйста)
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как изменить этот скрипт, чтобы прокрутка выполнялась в конец страницы? Teamur Общие вопросы Javascript 2 29.06.2015 18:27
При перетаскивании границы блока .Нужно что бы этот блок расширялся и наезжал сверху jei Общие вопросы Javascript 5 14.11.2013 10:24
Скажите, что это за скрипт? mltfilm Элементы интерфейса 2 19.07.2013 18:44
Ява скрипт, что то вроед спойлера aspergil Общие вопросы Javascript 3 09.06.2013 22:39
что делает этот скрипт?)) jek Общие вопросы Javascript 5 10.01.2010 17:24