JQuery: почему я не могу исчезнуть изображение в Chrome, когда изображение загружается? - PullRequest
0 голосов
/ 13 мая 2011

Я не понимаю этого - почему я не могу выцветать изображение в Chrome, когда оно загружено?

jquery:

$(document).ready(function(){


        $('.image').fadeOut('slow',function(){

        });

    });

html,

<body>
<img src="pic-1.jpg" class="image"/>
</body>

Но он отлично работает на всех других браузерах, включая IE!

Есть идеи, что я сделал неправильно?

Спасибо.

РЕДАКТИРОВАТЬ:

Это весь код, который я тестирую в Chrome и других браузерах,

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Test</title>
    <script type="text/javascript" src="jquery-1.6.min.js"></script>

    <script type="text/javascript">

    $(document).ready(function(){
        $('img').fadeOut('slow');
    });

</script>
</head>

<body>
        <img src="pic-1.jpg"/>

</body>
</html>

Мне кажется, я читал его где-то раньше, это связано с тем, как изображениезагружен на Chrome.Но я не могу вспомнить, как это работает сейчас!

Есть идеи?

Спасибо.

РЕДАКТИРОВАТЬ:

Получил это исправить,

$(document).ready(function(){

        $(window).bind('load', function() {
            $('img').fadeOut('slow');
        });
    });

1 Ответ

2 голосов
/ 13 мая 2011

Это может быть связано с тем, что $(document).ready() срабатывает, когда загрузка HTML завершена, а не после загрузки изображений.Странное исправление, но попробуйте обернуть div вокруг изображения и потушить его на готовности вместо этого.В качестве альтернативы, звоните $('img').fadeOut('slow'); на .load() вместо .ready().

...