Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 14.11.2012, 20:09
Аспирант
Отправить личное сообщение для Iktash Посмотреть профиль Найти все сообщения от Iktash
 
Регистрация: 03.07.2012
Сообщений: 43

Как обработать бесконечный цикл?
Мне нужно, что бы элемент летал по эллипсу. Написал следующее:
function move( object, coordinateX, coordinateY ){
        $( object ).animate( {
            top: coordinateY + "px",
            left: coordinateX + "px",
          },
          10
        );
      } 
 
     function circle(object,Acoordinate, Bcoordinate,count){
for (var i = 0; i < count; i++) {
var t = ((3/2)*Math.PI+i/30);
var x = Acoordinate*Math.cos(t);
var y = Bcoordinate*Math.sin(t);
move( object, x, y );
}
}
    
      
      $( document ).ready(
        function(){
circle($( "#container" ),400, 200, 1000);
        }
      );

<head>
    <style type="text/css">
      #container{
        margin: 150 auto;
        background-color: #eef;
        border: 2px solid #ddf;
        height: 200px;
        width: 200px;
        position: relative;
        border-radius: 100px;
      }
    </style>
  </head>
  <body>
    <div id="container"></div>
  </body>

Собственно вопрос, а как сделать, что бы постоянно крутился? Пробовал бесконечный цикл - браузер не обрабатывает. Пробовал рекурсию написать, но то ли нельзя тут, то ли я не понял как. Прошу помощи. Заранее благодарен.
Ответить с цитированием
  #2 (permalink)  
Старый 14.11.2012, 20:41
Профессор
Отправить личное сообщение для DjDiablo Посмотреть профиль Найти все сообщения от DjDiablo
 
Регистрация: 04.02.2011
Сообщений: 1,815

в кратце
var play=function(){           

        //фактически на месте этого комента и расположи тело цикла

        $("div").animate({left:0},10, play );
  }
  play();


Пример, можно запустить даже
<!DOCTYPE HTML>
<html>
  <head>
  <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
    
  </head>
  <body>
    <div style="position:absolute; width:10px; height:10px;">Привет!</div>
    <script>
      var play=function(){
           
        $("div").animate({left:500}).animate({left:0},1000, play );
      }
      play();

    </script>

  </body>
</html>


вот только непонимаю зачем тебе animate
__________________
Лучше калымить в гандурасе чем гандурасить на колыме

Последний раз редактировалось DjDiablo, 14.11.2012 в 20:49.
Ответить с цитированием
  #3 (permalink)  
Старый 15.11.2012, 20:30
Аспирант
Отправить личное сообщение для Iktash Посмотреть профиль Найти все сообщения от Iktash
 
Регистрация: 03.07.2012
Сообщений: 43

Спасибо большое за ответ. Я только начинаю js изучать. Нагуглил такой способ сделать, что б по кругу летало. Если поясните, в каком направлении нужно было искать, или еще лучше ссылочкой поделитесь быду очень благодарен.
Ответить с цитированием
  #4 (permalink)  
Старый 16.11.2012, 10:26
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,124

Сообщение от Iktash
в каком направлении нужно было искать, или еще лучше ссылочкой поделитесь
Так вот же
http://javascript.ru/blog/Andrej-Par...cii-JavaScript
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как научиться думать на javascript ? samuel Оффтопик 31 03.09.2013 02:10
Решение проблемы кодировок для AJAX и PHP без iconv (cp1251 в AJAX) Serge Ageyev AJAX и COMET 10 24.04.2013 20:48
подскажите с eval, как обработать код? czp Общие вопросы Javascript 7 13.05.2012 20:37
Как правильно обработать событие? BAnder Events/DOM/Window 19 03.02.2009 14:09
Как обработать несколько элементов подряд? vladymyrk jQuery 1 07.01.2009 20:33