Просмотр полной версии : Chrome и IE не видят переменную внутри animate.
Впервые столкнулся с подобным, есть примерно такой код:
var anim = function () {
var i = 0;
var Arr = $('#someid').children('img');
$(Arr).each(function () {
$(this).animate({
'width': W+'px',
'height': H+'px',
}, 1000, "swing");
i++;
});
}
Браузеры Chrome и IE не хотят выполнять, причем если написать так, все ок:
$(this).animate({'width': '100px',
В Opera, Firefox все нормально.
Что это может быть?
Вставить перед запуском animate строки alert(W + 'px') и alert(H + 'px'), посмотреть, чему равны эти строки. Чудес не бывает (:
Кстати, а 'px' обязательно добавлять? jQuery, вроде, по умолчанию их приписывает к числам.
$(Arr) - лишнее, Arr - это уже jQuery-элемент, можно сразу Arr.each.
Вставить перед запуском animate строки alert(W + 'px') и alert(H + 'px'), посмотреть, чему равны эти строки. Чудес не бывает (:
Кстати, а 'px' обязательно добавлять? jQuery, вроде, по умолчанию их приписывает к числам.
$(Arr) - лишнее, Arr - это уже jQuery-элемент, можно сразу Arr.each.
Обязательно, иногда без px свойства не срабатывают.
Broken ищи где отваливаются W и H alert ом как найдешь отпишись..
Спасибо всем.
Терялось еще в той функции, откуда был вызов, причем по разным причинам для “Chrome” хватило обработчика: load, а “IE” упорно не хочет видеть размеры изображений в скрытом div.
Отсюда вопрос: если у div стоит display:none;, а внутри лежат некие изображения, можно ли получить их реальные размеры в браузере “IE”
Делал так:
//во всех браузерах 0
this.width();
this.height();
И так:
//работает везде, кроме IE
this.width
this.height
Или вообще забить на это и сделать иначе?
vBulletin® v3.6.7, Copyright ©2000-2025, Jelsoft Enterprises Ltd. Перевод: zCarot