Показать сообщение отдельно
  #5 (permalink)  
Старый 19.09.2011, 22:37
Интересующийся
Отправить личное сообщение для DonLino Посмотреть профиль Найти все сообщения от DonLino
 
Регистрация: 13.07.2010
Сообщений: 15

Вобщем не совсем все получается как хотелось бы..
Есть 4 елемента:
<div id="elemToMove">
        <div class="toMove"></div>
        <div class="toMove"></div>
        <div class="toMove"></div>
        <div class="toMove"></div>
</div>

Нужно для каждого хранить по 2 свойства, допустим х и у, что бы потом использовать в анимации. Делаю так (упрощенный код):
var objClass = function (x, y) {
     px = x;
     py = y;
};
function moveObj (obj) {
          $(obj).animate({left: obj.px, top: obj.py}, 1000);
     };

objects = $(".toMove");
objects.each(function () {
        this = new objClass(x, y);
        alert(this.px +" "+ this.py);
        moveObj(this);
};

Вобщем где-то так, но не работает...
Пробую по-другому:
objects.each(function (index) {
        obj = objects[index];
        obj = new objClass(x, y);
        alert(obj.px +" "+ obj.py);
        moveObj(obj);
};

Свойства px и py есть, но с анимацией проблема, не находит метод animate у объекта obj.
Пробую иначе:
objects.each(function (index) {
        obj = objects[index];
        obj.prototype = objClass(x, y);
        alert(obj.px +" "+ obj.py);
        moveObj(obj);
};

Здесь с анимацией все хорошо, только отсутствуют свойства px и py.
Подскажите, как правильно сделать?
Ответить с цитированием