Сообщение от master_alf
|
makeGray('body div img');
|
1) body в селекторе ни к селу ни к городу. Бывают картинки вне body чтоли?
2) Раз jQuery, то и оформи как плагин к jQuery. Чтобы вызов был через
$('div img').makeGray()
Сообщение от master_alf
|
var grayTryCount = 0;
var timerID = false;
|
Срём в глобал? Не канает для публичного плагина. Срочно обернуть в анонимную функцию.
Сообщение от master_alf
|
$(selector)
|
А что если у юзера был вызван jQuery.noConflict() ?
Передать в анонимную функцию - обертку ссылку на jQuery, а внутри уже использовать знак доллара. Смотри как это сделано в других плагинах. Вообще, раз ты делаешь плагин, хоть бы не поленился и изучил как их делают другие.
Сообщение от master_alf
|
setTimeout(
|
Это самый последний вариант решения, когда подругому - ну никак. В данном же случае можно просто навесить обработчик onload на картинки и ждать их загрузки.
Сообщение от master_alf
|
$(imgObj).attr('src');
|
Может просто
imgObj.src ?
Сообщение от master_alf
|
$(newImg).attr('class', 'gray');
|
Сообщение от master_alf
|
$(img).addClass('makeGrayDone');
|
Как будто два разных человека писали код. addClass предпочтительней.
Где используется функция createCanvas ?
Сообщение от master_alf
|
$(fx.elem).css('-ms-filter', 'progidXImageTransform.Microsoft.Alpha(Opacity=' + opacity + ')');
|
Зачем это? jQuery сама фиксит opacity в старых ишаках.
Перед .animate() нужно делать .stop() чтоб не образовывалось очереди.