⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 prototype.js

📁 ajax窗体技术,有许多漂亮的窗体,实现漂亮的客户端
💻 JS
📖 第 1 页 / 共 5 页
字号:
    return slices.map(iterator);  },  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 = false;    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 || Prototype.K)(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;  },  inGroupsOf: function(number, fillWith) {    fillWith = fillWith === undefined ? null : fillWith;    return this.eachSlice(number, function(slice) {      while(slice.length < number) slice.push(fillWith);      return slice;    });  },  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.map(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.map(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.map();  },  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));    });  },  size: function() {    return this.toArray().length;  },  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, length = iterable.length; i < length; i++)      results.push(iterable[i]);    return results;  }}if (Prototype.Browser.WebKit) {  $A = Array.from = function(iterable) {    if (!iterable) return [];    if (!(typeof iterable == 'function' && iterable == '[object NodeList]') &&      iterable.toArray) {      return iterable.toArray();    } else {      var results = [];      for (var i = 0, length = iterable.length; i < 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, length = this.length; i < 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 != 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, length = this.length; i < length; i++)      if (this[i] == object) return i;    return -1;  },  reverse: function(inline) {    return (inline !== false ? this : this.toArray())._reverse();  },  reduce: function() {    return this.length > 1 ? this : this[0];  },  uniq: function(sorted) {    return this.inject([], function(array, value, index) {      if (0 == index || (sorted ? array.last() != value : !array.include(value)))        array.push(value);      return array;    });  },  clone: function() {    return [].concat(this);  },  size: function() {    return this.length;  },  inspect: function() {    return '[' + this.map(Object.inspect).join(', ') + ']';  },  toJSON: function() {    var results = [];    this.each(function(object) {      var value = Object.toJSON(object);      if (value !== undefined) results.push(value);    });    return '[' + results.join(', ') + ']';  }});Array.prototype.toArray = Array.prototype.clone;function $w(string) {  string = string.strip();  return string ? string.split(/\s+/) : [];}if (Prototype.Browser.Opera){  Array.prototype.concat = function() {    var array = [];    for (var i = 0, length = this.length; i < length; i++) array.push(this[i]);    for (var i = 0, length = arguments.length; i < length; i++) {      if (arguments[i].constructor == Array) {        for (var j = 0, arrayLength = arguments[i].length; j < arrayLength; j++)          array.push(arguments[i][j]);      } else {        array.push(arguments[i]);      }    }    return array;  }}var Hash = function(object) {  if (object instanceof Hash) this.merge(object);  else Object.extend(this, object || {});};Object.extend(Hash, {  toQueryString: function(obj) {    var parts = [];    parts.add = arguments.callee.addPair;    this.prototype._each.call(obj, function(pair) {      if (!pair.key) return;      var value = pair.value;      if (value && typeof value == 'object') {        if (value.constructor == Array) value.each(function(value) {          parts.add(pair.key, value);        });        return;      }      parts.add(pair.key, value);    });    return parts.join('&');  },  toJSON: function(object) {    var results = [];    this.prototype._each.call(object, function(pair) {      var value = Object.toJSON(pair.value);      if (value !== undefined) results.push(pair.key.toJSON() + ': ' + value);    });    return '{' + results.join(', ') + '}';  }});Hash.toQueryString.addPair = function(key, value, prefix) {  key = encodeURIComponent(key);  if (value === undefined) this.push(key);  else this.push(key + '=' + (value == null ? '' : encodeURIComponent(value)));}Object.extend(Hash.prototype, Enumerable);Object.extend(Hash.prototype, {  _each: function(iterator) {    for (var key in this) {      var value = this[key];      if (value && value == Hash.prototype[key]) 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(this, function(mergedHash, pair) {      mergedHash[pair.key] = pair.value;      return mergedHash;    });  },  remove: function() {    var result;    for(var i = 0, length = arguments.length; i < length; i++) {      var value = this[arguments[i]];      if (value !== undefined){        if (result === undefined) result = value;        else {          if (result.constructor != Array) result = [result];          result.push(value)        }      }      delete this[arguments[i]];    }    return result;  },  toQueryString: function() {    return Hash.toQueryString(this);  },  inspect: function() {    return '#<Hash:{' + this.map(function(pair) {      return pair.map(Object.inspect).join(': ');    }).join(', ') + '}>';  },  toJSON: function() {    return Hash.toJSON(this);  }});function $H(object) {  if (object instanceof Hash) return object;  return new Hash(object);};// Safari iterates over shadowed propertiesif (function() {  var i = 0, Test = function(value) { this.key = value };  Test.prototype.key = 'foo';  for (var property in new Test('bar')) i++;  return i > 1;}()) Hash.prototype._each = function(iterator) {  var cache = [];  for (var key in this) {    var value = this[key];    if ((value && value == Hash.prototype[key]) || cache.include(key)) continue;    cache.push(key);    var pair = [key, value];    pair.key = key;    pair.value = value;    iterator(pair);  }};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;    while (this.include(value)) {      iterator(value);      value = value.succ();    }  },  include: function(value) {

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -