Помощник
|
движение объекта на JS |
Bucks
|
Сообщение
#1
|
||
|
|
||
|
|||
locky-yotu |
28.8.2010, 20:17;
Ответить: locky-yotu
Сообщение
#2
|
|
Bucks, вы все так же ленитесь читать теорию?)
Точное положение объектов можно задавать используя позиционирование, и параметры top, right, boottom и left. Вот тут написано подробнее. |
|
|
Bucks
|
Сообщение
#3
|
|
Да я ищу в поисковиках, так то что мне надо найти не могу, уже мучаюсь, пробую по-всякому
|
|
|
Bucks
|
Сообщение
#4
|
|
Мне надо не точное положение.
А как на jQuery, можно сдвинуть объект +10px по X Оси, потом еще раз сдвинуть можно, еще раз, еще раз и еще раз=) Токо надо на JS |
|
|
Bucks
|
Сообщение
#5
|
|
Вот так пробовал
Diva.style.left = '100'; двигает на 100px Но повториться не сможет. потому что он не прибавляет px, а указывает точное расположение |
|
|
locky-yotu |
28.8.2010, 20:33;
Ответить: locky-yotu
Сообщение
#6
|
|
Ну примерно можно так:
<html>
<head> <title>qwerty</title> <script type="text/javascript"> var moveObj = function(obj_,max) { var obj = document.getElementById(obj_); if (!obj.style.left) {obj.style.left=0} obj.style.left = parseInt(obj.style.left)+10+'px'; if (parseInt(obj.style.left)<max) {setTimeout(function(){moveObj(obj_,max)},200)} } </script> <style type="text/css"> #sample {position:absolute;top:0;left:0;width:100px;height:100px;background:#000} </style> </head> <body> <div id="sample"></div> <script type="text/javascript"> var ex = new moveObj('sample',200); </script> </body> </html> |
|
|
Bucks
|
Сообщение
#7
|
|
нифига се как сложно
|
|
|
Bucks
|
Сообщение
#8
|
|
Если вам не сложно объясните пожалуйста каждую строчку скрипта=) кроме сетТаймаут.
И еще вопрос, зачем 2 раза теги скрипт открывать? |
|
|
Bucks
|
Сообщение
#9
|
|
Если не против, я лучше сам по задаю вопросы, то что не понятно=)
1.if (!obj.style.left) {obj.style.left=0} - не понятно мне зачем 2 раза почти одно и тоже писать. Что дает знак "!"? 2.Что делает parseInt. 3.Что значит +'px' 4.Что дает max и откуда оно взялось. 5.И что это такое var ex = new moveObj('sample',1000);
|
|
|
locky-yotu |
28.8.2010, 21:56;
Ответить: locky-yotu
Сообщение
#10
|
|
1. Если у объекта изначально не стоит значение для left в атрибуте style, то он выставляется в "0". Восклицательный знак перед чем либо означает отрицание. Т.е. эта запись означает "если нет параметра left в аттрибуте style, выставим его в 0"
2. Оно преобразует строку в число. Т.к. текущее значение left будет, например 10px, то при операции '10px' + 10 получим '10px10'. А функция parseInt преобразует строку '10px' в число 10. Вот и получаем 10 + 10 = 20 ... 3. ... и вот к этим 20 прибавляется строка 'px', т.к. left=20 - неправильно, а left=20px - правильно. 4. max - произвольное значение, до которого объект будет двигаться влево. 5. Это вызов функции. Можно было написать <body onload="moveObj('sample',200)"> , но можно и так |
|
|
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Движение объекта | 12 | Le Thaw | 6127 | 14.9.2010, 17:27 автор: -Le Thaw- |
|
задержка появления объекта при загрузки страницы | 5 | andro_hb | 14075 | 16.9.2009, 18:37 автор: -locky-yotun- |
Текстовая версия | Сейчас: 25.4.2024, 16:03 |