просто к вашему сведению. Удалите $(document).ready(function() { });
, и он отлично работает, это JSbin
Хорошо, я понял это. IE хочет запустить интервал сразу, и в этом интервале вы используете переменную MouseRelXpos
, которая не устанавливается до тех пор, пока не будет запущен mousemove
. В результате переменная не определена, поэтому скрипт вылетает. Просто добавьте это в начало вашего JS:
var MouseRelXpos = 0;
Это даст переменной начальное значение и предотвратит сбой скрипта в IE. Я проверил в jsfiddle, и он отлично работает. Производительность в IE не очень хорошая, но это уже другая история. :)