X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

2 страниц V   1 2 >
Открыть тему
Тема закрыта
> движение объекта на JS
Bucks
Bucks
Topic Starter сообщение 28.8.2010, 20:02; Ответить: Bucks
Сообщение #1


Как переместить объект на 1px например=)
И если еще можно покажите как сделать, так чтобы он не перемещался а двигался(по координате)
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
locky-yotu
locky-yotu
сообщение 28.8.2010, 20:17; Ответить: locky-yotu
Сообщение #2


Bucks, вы все так же ленитесь читать теорию?)
Точное положение объектов можно задавать используя позиционирование, и параметры top, right, boottom и left. Вот тут написано подробнее.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Bucks
Bucks
Topic Starter сообщение 28.8.2010, 20:18; Ответить: Bucks
Сообщение #3


Да я ищу в поисковиках, так то что мне надо найти не могу, уже мучаюсь, пробую по-всякому
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Bucks
Bucks
Topic Starter сообщение 28.8.2010, 20:19; Ответить: Bucks
Сообщение #4


Мне надо не точное положение.
А как на jQuery, можно сдвинуть объект +10px по X Оси, потом еще раз сдвинуть можно, еще раз, еще раз и еще раз=)
Токо надо на JS
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Bucks
Bucks
Topic Starter сообщение 28.8.2010, 20:20; Ответить: Bucks
Сообщение #5


Вот так пробовал
Diva.style.left = '100'; двигает на 100px
Но повториться не сможет. потому что он не прибавляет px, а указывает точное расположение
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
locky-yotu
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
Bucks
Topic Starter сообщение 28.8.2010, 20:40; Ответить: Bucks
Сообщение #7


нифига се как сложно
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Bucks
Bucks
Topic Starter сообщение 28.8.2010, 20:42; Ответить: Bucks
Сообщение #8


Если вам не сложно объясните пожалуйста каждую строчку скрипта=) кроме сетТаймаут.
И еще вопрос, зачем 2 раза теги скрипт открывать?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Bucks
Bucks
Topic Starter сообщение 28.8.2010, 20:48; Ответить: 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
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)">

, но можно и так
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
2 страниц V   1 2 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Движение объекта
12 Le Thaw 6123 14.9.2010, 17:27
автор: -Le Thaw-
Открытая тема (нет новых ответов) задержка появления объекта при загрузки страницы
5 andro_hb 14075 16.9.2009, 18:37
автор: -locky-yotun-


 



RSS Текстовая версия Сейчас: 16.4.2024, 19:07
Дизайн