The following piece of code is seen in prototype (because function.argumetns is an instance of an Array in Opera)
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;
}
}
The problem: what if arguments[i] in the second loop is undefined or null?
This affects this website http://www.zenggi.com/browse/CATEGORIES/DRESSES/1381/Sophie+Dress.html
The color button don't work.
The solution is very simple. Change
if (arguments[i].constructor == Array) {
to
if (arguments[i] && arguments[i].constructor == Array) {
Thanks :p