|
|
|
| Здравствуйте. В общем такой вопрос, как осуществить уменьшение масштаба рисунка через определенное время с помощью JS. Имеется рисунок размерами 250x300 формата gif, нужно чтобы после его загрузки на сайте прошло 10 секунд и он уменьшился, ну допустим на 50%
Это рисунок управляется JS и весит сверху страницы над всеми объектами. Плавность его уменьшения тоже нужна)) | |
|
|
|
|
|
|
|
для: tokmak
(12.12.2007 в 12:01)
| | ловите событие загрузки страницы (onload). Затем, делаете что-то в этом духе:
- берете текущие размеры изображения, используя поля объекта изображения width и height
- запускаете рекурсивную функцию, которая по таймеру, уменьшает размеры на сколько-то пикселей, пропорционально.
- при каждом вызове функции смотрите, не достиг ли текущий размер картинки нужного, если достиг - заканчиваете рекурсию | |
|
|
|
|
|
|
|
для: tokmak
(12.12.2007 в 12:01)
| | >Имеется рисунок размерами 250x300 формата gif, нужно чтобы после его загрузки на сайте прошло 10 секунд
<img id="myPic" onload="setTimeout (myFunc, 10000)">
|
>он уменьшился, ну допустим на 50%
function myFunc ()
{document.getElementById ('myPic').style.width = '125px'}
|
>сверху страницы над всеми объектами* Но не над всеми - над тегом <select> или над флеш-объектом он никак не сможет "висеть" нигде, также как никак не сможет висеть над областью тега<iframe> в Opera...
>Плавность его уменьшения тоже нужна
var actual_size = 250;
function myFunc ()
{
if (actual_size == 125) return;
actual_size -= 5;
document.getElementById ('myPic').style.width = actual_size + 'px';
setTimeout (myFunc, 100);
}
|
| |
|
|
|
|
|
|
|
для: CNT
(12.12.2007 в 15:00)
| | Спасибо, сейчас подкину. | |
|
|
|
|
|
|
|
для: tokmak
(12.12.2007 в 15:45)
| | в общем код работает, спасибо за помощь. Но возник такой вопрос, как можно управлять уменьшением рисунка. Т.е. данный рисунок уменьшается относительно левого верхнего угла и левой стороны. нужно что бы он уменьшался с лева, а правая сторона оставалась на меньше. в общем уменьшение должно происходить из левого нижнего угла в правый верхний, вот такое направление. Спасибо.
П.С. сам плоховато знаю JS поэтому прошу помощи. | |
|
|
|
|
|
|
|
для: tokmak
(14.12.2007 в 09:21)
| | Внутри функции перед setTimeout (myFunc, 100); добавьте строку
document.getElementById ('myPic').style.marginLeft = (250 - actual_size) + 'px';
|
| |
|
|
|
|
|
|
|
для: CNT
(14.12.2007 в 09:37)
| | спасибо, счас подкину. Очень благодарен за ответы. | |
|
|
|