Перемещение по вертикали (прокрутка вверх) одного div внутри другого

#javascript #jquery #html #css #animation

#javascript #jquery #HTML #css #Анимация

Вопрос:

Как переместить содержимое внутреннего div вверх, не нажимая никаких кнопок, я имею в виду, как анимацию. И есть ли какой-либо способ вызвать событие, когда анимация завершена?

Ответ №1:

Что вам нужно использовать, так это Callback . В частности, тот, который встроен в .animate .

 $('div').animate({top:-50},1000,function() {
    alert('Animation is finished!');
});
  

Рабочий пример: http://jsfiddle.net/koolvin/YGBvb /

Или, возможно, вы имели в виду нечто большее в этом роде: http://jsfiddle.net/koolvin/uFwap

 $('div').animate({scrollTop:100},1000,function() {
    alert('Animation is finished!');
});
  

После просмотра вашего комментария, похоже, это то, что вы хотите:
http://jsfiddle.net/koolvin/uFwap/17 /

Комментарии:

1. Прошу прощения за недостаток знаний, я пытался выполнить ваше решение, но я получаю ошибку «Ожидаемый объект», я разместил скрипт сразу после тега div. Кроме того, представьте эффект, подобный титрам фильма, где внешний div — это отображение, а внутренний div — содержимое, содержимое не должно отображаться, если оно находится за пределами внешнего div. Пожалуйста, посоветуйте.

2. Нет проблем. Всегда готов помочь.