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

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

?? prototype.js

?? grails用戶使用指南
?? JS
?? 第 1 頁 / 共 4 頁
字號:
/*  Prototype JavaScript framework, version 1.5.0_rc0 *  (c) 2005 Sam Stephenson <sam@conio.net> * *  Prototype is freely distributable under the terms of an MIT-style license. *  For details, see the Prototype web site: http://prototype.conio.net/ */*--------------------------------------------------------------------------*/var Prototype = {  Version: '1.5.0_rc0',  ScriptFragment: '(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)',  emptyFunction: function() {},  K: function(x) {return x}}var Class = {  create: function() {    return function() {      this.initialize.apply(this, arguments);    }  }}var Abstract = new Object();Object.extend = function(destination, source) {  for (var property in source) {    destination[property] = source[property];  }  return destination;}Object.inspect = function(object) {  try {    if (object == undefined) return 'undefined';    if (object == null) return 'null';    return object.inspect ? object.inspect() : object.toString();  } catch (e) {    if (e instanceof RangeError) return '...';    throw e;  }}Function.prototype.bind = function() {  var __method = this, args = $A(arguments), object = args.shift();  return function() {    return __method.apply(object, args.concat($A(arguments)));  }}Function.prototype.bindAsEventListener = function(object) {  var __method = this;  return function(event) {    return __method.call(object, event || window.event);  }}Object.extend(Number.prototype, {  toColorPart: function() {    var digits = this.toString(16);    if (this < 16) return '0' + digits;    return digits;  },  succ: function() {    return this + 1;  },  times: function(iterator) {    $R(0, this, true).each(iterator);    return this;  }});var Try = {  these: function() {    var returnValue;    for (var i = 0; i < arguments.length; i++) {      var lambda = arguments[i];      try {        returnValue = lambda();        break;      } catch (e) {}    }    return returnValue;  }}/*--------------------------------------------------------------------------*/var PeriodicalExecuter = Class.create();PeriodicalExecuter.prototype = {  initialize: function(callback, frequency) {    this.callback = callback;    this.frequency = frequency;    this.currentlyExecuting = false;    this.registerCallback();  },  registerCallback: function() {    setInterval(this.onTimerEvent.bind(this), this.frequency * 1000);  },  onTimerEvent: function() {    if (!this.currentlyExecuting) {      try {        this.currentlyExecuting = true;        this.callback();      } finally {        this.currentlyExecuting = false;      }    }  }}Object.extend(String.prototype, {  gsub: function(pattern, replacement) {    var result = '', source = this, match;    replacement = arguments.callee.prepareReplacement(replacement);    while (source.length > 0) {      if (match = source.match(pattern)) {        result += source.slice(0, match.index);        result += (replacement(match) || '').toString();        source  = source.slice(match.index + match[0].length);      } else {        result += source, source = '';      }    }    return result;  },  sub: function(pattern, replacement, count) {    replacement = this.gsub.prepareReplacement(replacement);    count = count === undefined ? 1 : count;    return this.gsub(pattern, function(match) {      if (--count < 0) return match[0];      return replacement(match);    });  },  scan: function(pattern, iterator) {    this.gsub(pattern, iterator);    return this;  },  truncate: function(length, truncation) {    length = length || 30;    truncation = truncation === undefined ? '...' : truncation;    return this.length > length ?      this.slice(0, length - truncation.length) + truncation : this;  },  strip: function() {    return this.replace(/^\s+/, '').replace(/\s+$/, '');  },  stripTags: function() {    return this.replace(/<\/?[^>]+>/gi, '');  },  stripScripts: function() {    return this.replace(new RegExp(Prototype.ScriptFragment, 'img'), '');  },  extractScripts: function() {    var matchAll = new RegExp(Prototype.ScriptFragment, 'img');    var matchOne = new RegExp(Prototype.ScriptFragment, 'im');    return (this.match(matchAll) || []).map(function(scriptTag) {      return (scriptTag.match(matchOne) || ['', ''])[1];    });  },  evalScripts: function() {    return this.extractScripts().map(function(script) { return eval(script) });  },  escapeHTML: function() {    var div = document.createElement('div');    var text = document.createTextNode(this);    div.appendChild(text);    return div.innerHTML;  },  unescapeHTML: function() {    var div = document.createElement('div');    div.innerHTML = this.stripTags();    return div.childNodes[0] ? div.childNodes[0].nodeValue : '';  },  toQueryParams: function() {    var pairs = this.match(/^\??(.*)$/)[1].split('&');    return pairs.inject({}, function(params, pairString) {      var pair = pairString.split('=');      params[pair[0]] = pair[1];      return params;    });  },  toArray: function() {    return this.split('');  },  camelize: function() {    var oStringList = this.split('-');    if (oStringList.length == 1) return oStringList[0];    var camelizedString = this.indexOf('-') == 0      ? oStringList[0].charAt(0).toUpperCase() + oStringList[0].substring(1)      : oStringList[0];    for (var i = 1, len = oStringList.length; i < len; i++) {      var s = oStringList[i];      camelizedString += s.charAt(0).toUpperCase() + s.substring(1);    }    return camelizedString;  },  inspect: function() {    return "'" + this.replace(/\\/g, '\\\\').replace(/'/g, '\\\'') + "'";  }});String.prototype.gsub.prepareReplacement = function(replacement) {  if (typeof replacement == 'function') return replacement;  var template = new Template(replacement);  return function(match) { return template.evaluate(match) };}String.prototype.parseQuery = String.prototype.toQueryParams;var Template = Class.create();Template.Pattern = /(^|.|\r|\n)(#\{(.*?)\})/;Template.prototype = {  initialize: function(template, pattern) {    this.template = template.toString();    this.pattern  = pattern || Template.Pattern;  },  evaluate: function(object) {    return this.template.gsub(this.pattern, function(match) {      var before = match[1];      if (before == '\\') return match[2];      return before + (object[match[3]] || '').toString();    });  }}var $break    = new Object();var $continue = new Object();var Enumerable = {  each: function(iterator) {    var index = 0;    try {      this._each(function(value) {        try {          iterator(value, index++);        } catch (e) {          if (e != $continue) throw e;        }      });    } catch (e) {      if (e != $break) throw e;    }  },  all: function(iterator) {    var result = true;    this.each(function(value, index) {      result = result && !!(iterator || Prototype.K)(value, index);      if (!result) throw $break;    });    return result;  },  any: function(iterator) {    var result = true;    this.each(function(value, index) {      if (result = !!(iterator || Prototype.K)(value, index))        throw $break;    });    return result;  },  collect: function(iterator) {    var results = [];    this.each(function(value, index) {      results.push(iterator(value, index));    });    return results;  },  detect: function (iterator) {    var result;    this.each(function(value, index) {      if (iterator(value, index)) {        result = value;        throw $break;      }    });    return result;  },  findAll: function(iterator) {    var results = [];    this.each(function(value, index) {      if (iterator(value, index))        results.push(value);    });    return results;  },  grep: function(pattern, iterator) {    var results = [];    this.each(function(value, index) {      var stringValue = value.toString();      if (stringValue.match(pattern))        results.push((iterator || Prototype.K)(value, index));    })    return results;  },  include: function(object) {    var found = false;    this.each(function(value) {      if (value == object) {        found = true;        throw $break;      }    });    return found;  },  inject: function(memo, iterator) {    this.each(function(value, index) {      memo = iterator(memo, value, index);    });    return memo;  },  invoke: function(method) {    var args = $A(arguments).slice(1);    return this.collect(function(value) {      return value[method].apply(value, args);    });  },  max: function(iterator) {    var result;    this.each(function(value, index) {      value = (iterator || Prototype.K)(value, index);      if (result == undefined || value >= result)        result = value;    });    return result;  },  min: function(iterator) {    var result;    this.each(function(value, index) {      value = (iterator || Prototype.K)(value, index);      if (result == undefined || value < result)        result = value;    });    return result;  },  partition: function(iterator) {    var trues = [], falses = [];    this.each(function(value, index) {      ((iterator || Prototype.K)(value, index) ?        trues : falses).push(value);    });    return [trues, falses];  },  pluck: function(property) {    var results = [];    this.each(function(value, index) {      results.push(value[property]);    });    return results;  },  reject: function(iterator) {    var results = [];    this.each(function(value, index) {      if (!iterator(value, index))        results.push(value);    });    return results;  },  sortBy: function(iterator) {    return this.collect(function(value, index) {      return {value: value, criteria: iterator(value, index)};    }).sort(function(left, right) {      var a = left.criteria, b = right.criteria;      return a < b ? -1 : a > b ? 1 : 0;    }).pluck('value');  },  toArray: function() {    return this.collect(Prototype.K);  },  zip: function() {    var iterator = Prototype.K, args = $A(arguments);    if (typeof args.last() == 'function')      iterator = args.pop();    var collections = [this].concat(args).map($A);    return this.map(function(value, index) {      return iterator(collections.pluck(index));    });  },  inspect: function() {    return '#<Enumerable:' + this.toArray().inspect() + '>';  }}Object.extend(Enumerable, {  map:     Enumerable.collect,  find:    Enumerable.detect,  select:  Enumerable.findAll,  member:  Enumerable.include,  entries: Enumerable.toArray});var $A = Array.from = function(iterable) {  if (!iterable) return [];  if (iterable.toArray) {    return iterable.toArray();  } else {    var results = [];    for (var i = 0; i < iterable.length; i++)      results.push(iterable[i]);    return results;  }}Object.extend(Array.prototype, Enumerable);if (!Array.prototype._reverse)  Array.prototype._reverse = Array.prototype.reverse;Object.extend(Array.prototype, {  _each: function(iterator) {    for (var i = 0; i < this.length; i++)      iterator(this[i]);  },  clear: function() {    this.length = 0;    return this;  },  first: function() {    return this[0];  },  last: function() {    return this[this.length - 1];  },  compact: function() {    return this.select(function(value) {      return value != undefined || value != null;    });  },  flatten: function() {    return this.inject([], function(array, value) {      return array.concat(value && value.constructor == Array ?        value.flatten() : [value]);    });  },  without: function() {    var values = $A(arguments);    return this.select(function(value) {      return !values.include(value);    });  },  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();  },  inspect: function() {

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产免费成人在线视频| 国产一区二区在线影院| 国产精品自拍av| 欧美日韩中文字幕一区二区| 2020国产成人综合网| 天天免费综合色| 一本大道av伊人久久综合| 精品日韩欧美在线| 日本视频中文字幕一区二区三区| 不卡的电视剧免费网站有什么| 日韩女优毛片在线| 日韩影院免费视频| 欧美丰满一区二区免费视频| 亚洲免费资源在线播放| 成人av午夜电影| 国产精品久久看| 国产激情精品久久久第一区二区 | 国产精品一区二区91| 555www色欧美视频| 亚洲国产va精品久久久不卡综合| 91在线国产福利| **网站欧美大片在线观看| 久久国产剧场电影| 日韩女优电影在线观看| 美女性感视频久久| 欧美一区二区三区人| 日一区二区三区| 91精品国产福利在线观看| 亚洲国产精品久久一线不卡| 91福利资源站| 丝袜美腿高跟呻吟高潮一区| 欧美日韩精品一区视频| 亚洲成人激情自拍| 91.com视频| 麻豆成人91精品二区三区| 精品久久久久久亚洲综合网| 九色综合狠狠综合久久| 欧美不卡123| 豆国产96在线|亚洲| 国产午夜三级一区二区三| 成人自拍视频在线| 亚洲色图欧美在线| 欧美日本视频在线| 九九久久精品视频 | 精品视频在线免费| 青青草国产精品97视觉盛宴| 日韩欧美一级二级三级久久久| 韩国精品一区二区| 国产无一区二区| 91免费视频网址| 日韩国产成人精品| 欧美成人欧美edvon| 国产乱子伦一区二区三区国色天香 | 国产91精品露脸国语对白| 国产精品色一区二区三区| 91麻豆精品一区二区三区| 日韩专区欧美专区| 久久九九99视频| 欧美午夜精品免费| 国产美女在线观看一区| 综合激情成人伊人| 欧美精品一卡两卡| 成人免费毛片app| 丝袜美腿亚洲一区二区图片| 337p日本欧洲亚洲大胆精品| 不卡视频一二三四| 蜜臀av在线播放一区二区三区| 欧美经典一区二区| 欧美日本国产一区| 成人免费看视频| 蜜桃久久久久久| 亚洲精品伦理在线| 久久看人人爽人人| 777亚洲妇女| 99久久久久久| 国产真实乱偷精品视频免| 一区二区三区免费观看| 久久这里只精品最新地址| 91久久精品日日躁夜夜躁欧美| 精品一区二区三区在线播放视频| 亚洲视频免费观看| 国产日韩欧美a| 日韩久久精品一区| 欧美性xxxxxxxx| av不卡一区二区三区| 国产乱人伦偷精品视频不卡 | 欧美肥妇毛茸茸| 91麻豆国产福利在线观看| 国产精品夜夜爽| 免费观看久久久4p| 亚洲va国产va欧美va观看| 亚洲视频一区在线观看| 国产日韩v精品一区二区| 日韩免费看网站| 欧美精品在线一区二区三区| 日本高清成人免费播放| 成人av资源站| 成人美女视频在线观看18| 精品一区二区三区在线播放视频| 亚洲 欧美综合在线网络| 一区二区三区在线观看国产| 国产精品沙发午睡系列990531| 精品电影一区二区三区| 日韩欧美www| 日韩欧美亚洲一区二区| 欧美一区二区不卡视频| 777午夜精品视频在线播放| 欧美日韩高清一区二区不卡| 日本电影亚洲天堂一区| 在线观看日韩国产| 在线视频国内一区二区| 91在线播放网址| 91麻豆国产精品久久| 91福利精品视频| 在线中文字幕不卡| 欧美制服丝袜第一页| 欧美伦理影视网| 欧美一级高清片| 欧美精品一区视频| 久久久国产一区二区三区四区小说| 久久九九久精品国产免费直播| 国产亚洲精品超碰| 中文久久乱码一区二区| 亚洲视频免费在线| 亚洲二区视频在线| 蜜桃一区二区三区在线观看| 久久99久久精品| 国产成人99久久亚洲综合精品| 成人性视频免费网站| 99久久精品99国产精品| 欧美日韩精品一区二区三区| 欧美一区二区精品久久911| 26uuu国产一区二区三区| 中文字幕av一区 二区| 亚洲欧洲三级电影| 婷婷开心激情综合| 国产一区二区三区高清播放| 91在线国产观看| 91精品国产色综合久久不卡蜜臀 | 一区二区免费视频| 日韩激情在线观看| 国产激情一区二区三区四区| 91在线云播放| 91 com成人网| 国产精品美女久久福利网站| 一区二区三区毛片| 韩国女主播成人在线观看| 色综合天天综合网天天狠天天| 在线不卡的av| 中国色在线观看另类| 亚洲高清免费观看| 国产69精品久久777的优势| 欧美视频在线不卡| 国产日韩影视精品| 亚洲va国产va欧美va观看| 国产suv精品一区二区三区| 欧美日韩中文另类| 国产精品久久久99| 麻豆免费看一区二区三区| 91麻豆免费观看| 久久久久久亚洲综合| 亚洲成人av免费| 成人免费毛片高清视频| 日韩欧美一区中文| 亚洲一区二区三区影院| 粗大黑人巨茎大战欧美成人| 欧美一区二区高清| 亚洲图片自拍偷拍| 成人动漫一区二区三区| 日韩欧美国产综合| 亚洲丰满少妇videoshd| 91首页免费视频| 欧美国产精品中文字幕| 久久国产精品免费| 欧美另类变人与禽xxxxx| 亚洲美女偷拍久久| 成人激情动漫在线观看| 亚洲精品一区二区在线观看| 亚洲成人av在线电影| 在线中文字幕一区二区| 国产精品伦理一区二区| 国产一区不卡视频| 亚洲精品在线观| 老司机精品视频一区二区三区| 欧美亚洲国产一区二区三区 | 成人黄色在线看| 久久久久久久综合日本| 国模套图日韩精品一区二区 | 日韩午夜在线影院| 日本在线不卡视频一二三区| 欧美日韩视频在线第一区| 亚洲男帅同性gay1069| 色综合一区二区| 亚洲欧美一区二区三区孕妇| 99久久精品免费看国产| 国产精品久久久久婷婷二区次| 色综合久久九月婷婷色综合| 国产精品久久久久久久久果冻传媒| 成人ar影院免费观看视频| 国产精品不卡在线|