Снова работаю над очередным проектом на забугорную клиентуру…
На сей раз мой заказчик – негр.
Как выяснилось, негр он в душе, т.к. пользуется IE 7 и всю выполненную работу он проверяет именно в этом злополучном браузере.
Как обычно, IE преподносит сюрпризы каждый день.
Вот и сегодня, написав скрипт для заказчика и проверив его во всех нормальных браузерах, я сдал работу. Заказчик сказал, что скрипт нерабочий!
Долго искать причину не пришлось. Оказалось, что в IE не реализован метод Array.indexOf!
Решается данная проблема очень просто. Нужно просто самому реализовать нужную функцию, если она отсутствует.
Вот как это можно сделать:
if(!Array.indexOf) { Array.prototype.indexOf = function(obj){ for(var i=0; i<this.length; i++){ if(this[i]==obj){ return i; } } return -1; } }