Показать сообщение отдельно
  #17 (permalink)  
Старый 13.04.2011, 05:28
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

вот тот же код на jquery, без использования ее возможностей в плане анимации
<html>
<head>
    <title>test</title>
    <style type="text/css">
        .block {
            width: 800px;
            height: 300px;

            background: red;
        }
    </style>
</head>
<body>
<button onclick="hide()">Скрыть</button>
<div id="t" class="block"></div>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js"></script>
<script type="text/javascript">
    function hide() {
        var count = 10, i = count, width = $('#t').width(), height = $('#t').height();
        (function() {
            if (i--) {
                $('#t').css({
                    'width': Math.round(width * i / count) + 'px',
                    'height': Math.round(height * i / count) + 'px',
                    'opacity': i / count
                });
                setTimeout(arguments.callee, 20);
            }
        })();
    }
</script>
</body>
</html>

в данном конкретном случае изменения, может быть, небольшие. Но деталей реализации меньше. Следовательно проще понять, что эта функция делает. Если по какой-либо причине вам нужно в первую очередь видеть не что делает код, а как он это делает, это не значит, что так должно быть всегда и везде. Оба подхода имеют право на жизнь. Да, пряча реализацию, мы можем усложнить себе отладку в дальнейшем. Но это всего лишь возможность, у нее есть свои достоинства и недостатки. Где-то это уместно, где-то - нет, для кого-то подходит, для кого-то - нет. Да и просто, не прятать реализацию - значит не использовать функции. И люди делают это в разной степени, кто-то больше, кто-то - меньше

в общем, я к тому, что там 200КБ несжатого кода и куча недоплагинов, но ими можно пользоваться. И это опять же одна из возможностей, со своими достоинствами и недостатками
Ответить с цитированием