亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? prototype.js

?? 在線網絡測速在線網絡測速在線網絡測速在線網絡測速
?? JS
?? 第 1 頁 / 共 4 頁
字號:
  },

  indexOf: function(object) {
    for (var i = 0; i < this.length; i++)
      if (this[i] == object) return i;
    return -1;
  },

  reverse: function(inline) {
    return (inline !== false ? this : this.toArray())._reverse();
  },

  shift: function() {
    var result = this[0];
    for (var i = 0; i < this.length - 1; i++)
      this[i] = this[i + 1];
    this.length--;
    return result;
  },

  inspect: function() {
    return '[' + this.map(Object.inspect).join(', ') + ']';
  }
});
var Hash = {
  _each: function(iterator) {
    for (key in this) {
      var value = this[key];
      if (typeof value == 'function') continue;

      var pair = [key, value];
      pair.key = key;
      pair.value = value;
      iterator(pair);
    }
  },

  keys: function() {
    return this.pluck('key');
  },

  values: function() {
    return this.pluck('value');
  },

  merge: function(hash) {
    return $H(hash).inject($H(this), function(mergedHash, pair) {
      mergedHash[pair.key] = pair.value;
      return mergedHash;
    });
  },

  toQueryString: function() {
    return this.map(function(pair) {
      return pair.map(encodeURIComponent).join('=');
    }).join('&');
  },

  inspect: function() {
    return '#<Hash:{' + this.map(function(pair) {
      return pair.map(Object.inspect).join(': ');
    }).join(', ') + '}>';
  }
}

function $H(object) {
  var hash = Object.extend({}, object || {});
  Object.extend(hash, Enumerable);
  Object.extend(hash, Hash);
  return hash;
}
ObjectRange = Class.create();
Object.extend(ObjectRange.prototype, Enumerable);
Object.extend(ObjectRange.prototype, {
  initialize: function(start, end, exclusive) {
    this.start = start;
    this.end = end;
    this.exclusive = exclusive;
  },

  _each: function(iterator) {
    var value = this.start;
    do {
      iterator(value);
      value = value.succ();
    } while (this.include(value));
  },

  include: function(value) {
    if (value < this.start)
      return false;
    if (this.exclusive)
      return value < this.end;
    return value <= this.end;
  }
});

var $R = function(start, end, exclusive) {
  return new ObjectRange(start, end, exclusive);
}

var Ajax = {
  getTransport: function() {
    return Try.these(
      function() {return new ActiveXObject('Msxml2.XMLHTTP')},
      function() {return new ActiveXObject('Microsoft.XMLHTTP')},
      function() {return new XMLHttpRequest()}
    ) || false;
  },

  activeRequestCount: 0
}

Ajax.Responders = {
  responders: [],

  _each: function(iterator) {
    this.responders._each(iterator);
  },

  register: function(responderToAdd) {
    if (!this.include(responderToAdd))
      this.responders.push(responderToAdd);
  },

  unregister: function(responderToRemove) {
    this.responders = this.responders.without(responderToRemove);
  },

  dispatch: function(callback, request, transport, json) {
    this.each(function(responder) {
      if (responder[callback] && typeof responder[callback] == 'function') {
        try {
          responder[callback].apply(responder, [request, transport, json]);
        } catch (e) {}
      }
    });
  }
};

Object.extend(Ajax.Responders, Enumerable);

Ajax.Responders.register({
  onCreate: function() {
    Ajax.activeRequestCount++;
  },

  onComplete: function() {
    Ajax.activeRequestCount--;
  }
});

Ajax.Base = function() {};
Ajax.Base.prototype = {
  setOptions: function(options) {
    this.options = {
      method:       'post',
      asynchronous: true,
      parameters:   ''
    }
    Object.extend(this.options, options || {});
  },

  responseIsSuccess: function() {
    return this.transport.status == undefined
        || this.transport.status == 0
        || (this.transport.status >= 200 && this.transport.status < 300);
  },

  responseIsFailure: function() {
    return !this.responseIsSuccess();
  }
}

Ajax.Request = Class.create();
Ajax.Request.Events =
  ['Uninitialized', 'Loading', 'Loaded', 'Interactive', 'Complete'];

Ajax.Request.prototype = Object.extend(new Ajax.Base(), {
  initialize: function(url, options) {
    this.transport = Ajax.getTransport();
    this.setOptions(options);
    this.request(url);
  },

  request: function(url) {
    var parameters = this.options.parameters || '';
    if (parameters.length > 0) parameters += '&_=';

    try {
      this.url = url;
      if (this.options.method == 'get' && parameters.length > 0)
        this.url += (this.url.match(/\?/) ? '&' : '?') + parameters;

      Ajax.Responders.dispatch('onCreate', this, this.transport);

      this.transport.open(this.options.method, this.url,
        this.options.asynchronous);

      if (this.options.asynchronous) {
        this.transport.onreadystatechange = this.onStateChange.bind(this);
        setTimeout((function() {this.respondToReadyState(1)}).bind(this), 10);
      }

      this.setRequestHeaders();

      var body = this.options.postBody ? this.options.postBody : parameters;
      this.transport.send(this.options.method == 'post' ? body : null);

    } catch (e) {
      this.dispatchException(e);
    }
  },

  setRequestHeaders: function() {
    var requestHeaders =
      ['X-Requested-With', 'XMLHttpRequest',
       'X-Prototype-Version', Prototype.Version];

    if (this.options.method == 'post') {
      requestHeaders.push('Content-type',
        'application/x-www-form-urlencoded');

      /* Force "Connection: close" for Mozilla browsers to work around
       * a bug where XMLHttpReqeuest sends an incorrect Content-length
       * header. See Mozilla Bugzilla #246651.
       */
      if (this.transport.overrideMimeType)
        requestHeaders.push('Connection', 'close');
    }

    if (this.options.requestHeaders)
      requestHeaders.push.apply(requestHeaders, this.options.requestHeaders);

    for (var i = 0; i < requestHeaders.length; i += 2)
      this.transport.setRequestHeader(requestHeaders[i], requestHeaders[i+1]);
  },

  onStateChange: function() {
    var readyState = this.transport.readyState;
    if (readyState != 1)
      this.respondToReadyState(this.transport.readyState);
  },

  header: function(name) {
    try {
      return this.transport.getResponseHeader(name);
    } catch (e) {}
  },

  evalJSON: function() {
    try {
      return eval(this.header('X-JSON'));
    } catch (e) {}
  },

  evalResponse: function() {
    try {
      return eval(this.transport.responseText);
    } catch (e) {
      this.dispatchException(e);
    }
  },

  respondToReadyState: function(readyState) {
    var event = Ajax.Request.Events[readyState];
    var transport = this.transport, json = this.evalJSON();

    if (event == 'Complete') {
      try {
        (this.options['on' + this.transport.status]
         || this.options['on' + (this.responseIsSuccess() ? 'Success' : 'Failure')]
         || Prototype.emptyFunction)(transport, json);
      } catch (e) {
        this.dispatchException(e);
      }

      if ((this.header('Content-type') || '').match(/^text\/javascript/i))
        this.evalResponse();
    }

    try {
      (this.options['on' + event] || Prototype.emptyFunction)(transport, json);
      Ajax.Responders.dispatch('on' + event, this, transport, json);
    } catch (e) {
      this.dispatchException(e);
    }

    /* Avoid memory leak in MSIE: clean up the oncomplete event handler */
    if (event == 'Complete')
      this.transport.onreadystatechange = Prototype.emptyFunction;
  },

  dispatchException: function(exception) {
    (this.options.onException || Prototype.emptyFunction)(this, exception);
    Ajax.Responders.dispatch('onException', this, exception);
  }
});

Ajax.Updater = Class.create();

Object.extend(Object.extend(Ajax.Updater.prototype, Ajax.Request.prototype), {
  initialize: function(container, url, options) {
    this.containers = {
      success: container.success ? $(container.success) : $(container),
      failure: container.failure ? $(container.failure) :
        (container.success ? null : $(container))
    }

    this.transport = Ajax.getTransport();
    this.setOptions(options);

    var onComplete = this.options.onComplete || Prototype.emptyFunction;
    this.options.onComplete = (function(transport, object) {
      this.updateContent();
      onComplete(transport, object);
    }).bind(this);

    this.request(url);
  },

  updateContent: function() {
    var receiver = this.responseIsSuccess() ?
      this.containers.success : this.containers.failure;
    var response = this.transport.responseText;

    if (!this.options.evalScripts)
      response = response.stripScripts();

    if (receiver) {
      if (this.options.insertion) {
        new this.options.insertion(receiver, response);
      } else {
        Element.update(receiver, response);
      }
    }

    if (this.responseIsSuccess()) {
      if (this.onComplete)
        setTimeout(this.onComplete.bind(this), 10);
    }
  }
});

Ajax.PeriodicalUpdater = Class.create();
Ajax.PeriodicalUpdater.prototype = Object.extend(new Ajax.Base(), {
  initialize: function(container, url, options) {
    this.setOptions(options);
    this.onComplete = this.options.onComplete;

    this.frequency = (this.options.frequency || 2);
    this.decay = (this.options.decay || 1);

    this.updater = {};
    this.container = container;
    this.url = url;

    this.start();
  },

  start: function() {
    this.options.onComplete = this.updateComplete.bind(this);
    this.onTimerEvent();
  },

  stop: function() {
    this.updater.onComplete = undefined;
    clearTimeout(this.timer);
    (this.onComplete || Prototype.emptyFunction).apply(this, arguments);
  },

  updateComplete: function(request) {
    if (this.options.decay) {
      this.decay = (request.responseText == this.lastText ?
        this.decay * this.options.decay : 1);

      this.lastText = request.responseText;
    }
    this.timer = setTimeout(this.onTimerEvent.bind(this),
      this.decay * this.frequency * 1000);
  },

  onTimerEvent: function() {
    this.updater = new Ajax.Updater(this.container, this.url, this.options);
  }
});
document.getElementsByClassName = function(className, parentElement) {
  var children = ($(parentElement) || document.body).getElementsByTagName('*');
  return $A(children).inject([], function(elements, child) {
    if (child.className.match(new RegExp("(^|\\s)" + className + "(\\s|$)")))
      elements.push(child);
    return elements;
  });
}

/*--------------------------------------------------------------------------*/

if (!window.Element) {
  var Element = new Object();
}

Object.extend(Element, {
  visible: function(element) {
    return $(element).style.display != 'none';
  },

  toggle: function() {
    for (var i = 0; i < arguments.length; i++) {
      var element = $(arguments[i]);
      Element[Element.visible(element) ? 'hide' : 'show'](element);
    }
  },

  hide: function() {
    for (var i = 0; i < arguments.length; i++) {
      var element = $(arguments[i]);
      element.style.display = 'none';
    }
  },

  show: function() {
    for (var i = 0; i < arguments.length; i++) {
      var element = $(arguments[i]);
      element.style.display = '';
    }
  },

  remove: function(element) {
    element = $(element);
    element.parentNode.removeChild(element);
  },

  update: function(element, html) {
    $(element).innerHTML = html.stripScripts();
    setTimeout(function() {html.evalScripts()}, 10);
  },

  getHeight: function(element) {
    element = $(element);
    return element.offsetHeight;
  },

  classNames: function(element) {
    return new Element.ClassNames(element);
  },

  hasClassName: function(element, className) {

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产福利不卡视频| 欧美日韩亚洲高清一区二区| 91天堂素人约啪| 7777精品伊人久久久大香线蕉的 | 国产精品视频在线看| 日韩激情视频在线观看| av资源网一区| 久久天天做天天爱综合色| 午夜电影一区二区| 91免费精品国自产拍在线不卡| 欧美不卡激情三级在线观看| 亚洲一区二区在线播放相泽| 99久久伊人精品| 亚洲国产精品精华液2区45| 麻豆freexxxx性91精品| 欧美自拍丝袜亚洲| 亚洲人成精品久久久久| 国产伦精品一区二区三区在线观看 | 国产校园另类小说区| 石原莉奈在线亚洲二区| 欧美在线影院一区二区| 亚洲男人天堂一区| 北条麻妃一区二区三区| 国产亚洲污的网站| 国产乱码精品一区二区三区五月婷| 欧美精品自拍偷拍动漫精品| 一级女性全黄久久生活片免费| 99视频精品全部免费在线| 国产精品久久久一区麻豆最新章节| 激情综合五月天| 久久免费看少妇高潮| 精品一区二区在线播放| 精品国产污污免费网站入口 | 亚洲v精品v日韩v欧美v专区| 色琪琪一区二区三区亚洲区| 国产精品午夜免费| av成人动漫在线观看| 欧美国产精品专区| eeuss鲁片一区二区三区在线观看| 国产欧美一区二区在线| 高潮精品一区videoshd| 中文字幕亚洲成人| 色香色香欲天天天影视综合网| 亚洲欧美乱综合| 欧美乱妇15p| 热久久国产精品| 久久精品视频网| 99久久婷婷国产精品综合| 中文字幕在线一区| 91豆麻精品91久久久久久| 亚洲一区二区三区爽爽爽爽爽 | 国产亚洲综合性久久久影院| 成人18精品视频| 伊人性伊人情综合网| 欧美日韩国产三级| 精品夜夜嗨av一区二区三区| 久久久久久黄色| 在线亚洲欧美专区二区| 麻豆国产一区二区| 亚洲欧美综合另类在线卡通| 欧美日韩一级视频| 国产一区二区0| 一区二区三区四区在线| 欧美一级在线视频| av网站一区二区三区| 亚洲午夜久久久久久久久久久| 欧美日韩成人在线一区| 国产91丝袜在线播放0| 亚洲国产视频一区| 久久久久久久久伊人| 一本久久精品一区二区| 久久99久久99精品免视看婷婷| 国产精品超碰97尤物18| 欧美一区二区大片| 91丨九色丨蝌蚪丨老版| 免费国产亚洲视频| 依依成人综合视频| 久久久久久亚洲综合| 欧美日本在线看| 成人国产亚洲欧美成人综合网| 亚洲成人av免费| 国产精品女主播在线观看| 欧美高清视频一二三区| 成人国产精品免费观看视频| 三级久久三级久久久| 亚洲免费在线看| 中文字幕精品三区| 日韩美女视频一区二区在线观看| 色综合久久久久久久| 国产老女人精品毛片久久| 亚洲第一电影网| 亚洲精品久久久蜜桃| 亚洲国产精品传媒在线观看| 精品日韩一区二区三区| 欧美男生操女生| 91福利视频在线| 99久久久久久99| 成人av午夜电影| 国产精品1024| 国产精品一区免费在线观看| 捆绑紧缚一区二区三区视频| 一区二区成人在线视频| 亚洲欧美在线视频| 国产精品人妖ts系列视频| 精品理论电影在线观看| 日韩欧美一区二区免费| 欧美丰满高潮xxxx喷水动漫| 欧美中文字幕不卡| 欧美视频一区二区三区四区| 色乱码一区二区三区88| 91小视频在线免费看| eeuss国产一区二区三区| 成人福利视频在线| 粉嫩嫩av羞羞动漫久久久 | 国产日韩欧美电影| www久久久久| 国产亚洲va综合人人澡精品| 精品免费99久久| 久久婷婷色综合| 国产午夜精品理论片a级大结局 | 韩国精品在线观看| 国产一区二区精品在线观看| 国产一区二区三区日韩| 国产麻豆精品视频| 成人久久久精品乱码一区二区三区 | 色88888久久久久久影院野外| 不卡一区二区中文字幕| 91麻豆免费在线观看| 色婷婷精品久久二区二区蜜臂av| 色综合色综合色综合色综合色综合 | 一区二区三区四区激情| 一级做a爱片久久| 日韩av电影天堂| 韩国精品免费视频| 93久久精品日日躁夜夜躁欧美| 色网站国产精品| 欧美人妖巨大在线| 久久久亚洲精品石原莉奈| 国产精品视频第一区| 亚洲狠狠爱一区二区三区| 日韩高清在线观看| 国产福利一区在线| 欧美在线观看一区| 精品国产精品一区二区夜夜嗨| 国产精品蜜臀av| 亚洲成人免费影院| 国产一本一道久久香蕉| 99精品偷自拍| 欧美一区二区三区视频免费| 国产欧美精品一区二区色综合朱莉| 综合久久久久久| 七七婷婷婷婷精品国产| 大白屁股一区二区视频| 欧美三区免费完整视频在线观看| 精品va天堂亚洲国产| 亚洲欧美精品午睡沙发| 麻豆国产精品官网| 在线亚洲高清视频| 中文字幕不卡在线播放| 亚洲三级电影全部在线观看高清| 三级久久三级久久久| 粉嫩在线一区二区三区视频| 欧美高清精品3d| 亚洲欧美综合色| 国产精品一区一区三区| 欧美精品久久一区| 亚洲日本丝袜连裤袜办公室| 狠狠久久亚洲欧美| 欧美久久久久久久久| 亚洲三级免费电影| 国产传媒日韩欧美成人| 欧美日本免费一区二区三区| 日韩一区在线免费观看| 国产一区二区免费在线| 欧美日韩国产在线观看| 亚洲色图都市小说| 成人免费高清视频在线观看| 精品少妇一区二区三区在线视频| 夜夜夜精品看看| 91网站最新地址| 亚洲国产激情av| 国产资源精品在线观看| 日韩一卡二卡三卡四卡| 亚洲五码中文字幕| 91国产福利在线| 亚洲美女屁股眼交| av不卡免费电影| 中文字幕在线播放不卡一区| 高清shemale亚洲人妖| 久久精品在线观看| 国产麻豆精品theporn| 26uuu国产电影一区二区| 久久精品国产亚洲高清剧情介绍 | 亚洲高清视频的网址| 99久久精品国产一区| 欧美激情一区不卡| 成人97人人超碰人人99| 亚洲欧洲韩国日本视频| 99精品热视频| 亚洲男人的天堂在线aⅴ视频|