in Ox.typeOf, handie IE nodelist (htmlcollection)

This commit is contained in:
rolux 2012-05-25 17:39:37 +02:00
parent 9d4128c787
commit 67fcca7304

View file

@ -337,11 +337,18 @@ Ox.typeOf <f> Returns the type of a value
Ox.typeOf = function(value) {
return Object.prototype.toString.call(value).slice(8, -1).toLowerCase();
};
if (Ox.typeOf() != 'undefined') {
// Handle Mobile Safari
Ox.typeOf = function(value) {
return value === null ? 'null'
: value === void 0 ? 'undefined'
: Object.prototype.toString.call(value).slice(8, -1).toLowerCase();
};
}
(function() {
// Internet Explorer returns 'HTMLCollection' instead of 'NodeList',
// Mobile Safari doesn't like null and undefined
var nodelist = Ox.typeOf(document.getElementsByTagName('a'));
if (nodelist != 'nodelist' || Ox.typeOf() != 'undefined') {
Ox.typeOf = function(value) {
var type = value === null ? 'null'
: value === void 0 ? 'undefined'
: Object.prototype.toString.call(
value
).slice(8, -1).toLowerCase();
return type == nodelist ? 'nodelist' : type;
};
}
})();