From 0fe30338a07bedb7dcf55d52692c74fed27988d2 Mon Sep 17 00:00:00 2001 From: samhed Date: Wed, 26 Mar 2014 15:22:45 +0100 Subject: [PATCH] Add a prototype from MDN for indexOf to be used in browsers where it is not supported. --- include/util.js | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/include/util.js b/include/util.js index 1c02676c..479ed7bc 100644 --- a/include/util.js +++ b/include/util.js @@ -57,6 +57,34 @@ if (!Array.prototype.map) }; } +// IE <9 does not support indexOf +//This prototype is provided by the Mozilla foundation and +//is distributed under the MIT license. +//http://www.ibiblio.org/pub/Linux/LICENSES/mit.license +if (!Array.prototype.indexOf) +{ + Array.prototype.indexOf = function(elt /*, from*/) + { + var len = this.length >>> 0; + + var from = Number(arguments[1]) || 0; + from = (from < 0) + ? Math.ceil(from) + : Math.floor(from); + if (from < 0) + from += len; + + for (; from < len; from++) + { + if (from in this && + this[from] === elt) + return from; + } + return -1; + }; +} + + // // requestAnimationFrame shim with setTimeout fallback //