Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Проблема при передаче в jquery переменной c id элемента (https://javascript.ru/forum/jquery/16998-problema-pri-peredache-v-jquery-peremennojj-c-id-ehlementa.html)

lectrouser 02.05.2011 15:17

Проблема при передаче в jquery переменной c id элемента
 
Здравствуйте, уважаемые форумчане!
Столкнулся с такой проблемой - не хочет выполняться функция:

Код:

<html>
<head>
<title>1</title>
<script type="text/javascript" src="jquery-latest.js"></script>
<script>
function move(id,x,y){
          var s1="#";
          var s2=id;
          s=s1+s2;
          alert(s); //проверяем что получилось
            $(s).animate({  //перемещаем получившийся div
                top: y,
                      left: x
            }, 1 );
}
</script>
</head>
<body>
<input name= "apply2" type="button" value="Сдвинуть чайник 1" onclick="move(teapot1,50,50)"/>
</body>
</html>

Предполагается, что элемент с id=teapot1 уже создан.
При щелчке на кнопку apply2 функция начинает выполняться, но в alert-e выводит #[object HTMLDivElement] вместо #teapot1. И анимация соответственно не выполняется, пишет что Uncaught exception: Syntax error, unrecognized expression: #[object HTMLDivElement].
Помогите, как мне только что созданные элементы отличающиеся только номерами в id переместить в соответствующие точки (функция будет выполняться в цикле)?
Спасибо!

SkyLight 02.05.2011 16:07

У вас на клике висит move(teapot1,50,50). А теперь сами внимательно посмотрите на то, что вы передаете в качетве первого параметра и проблема решится сама.

lectrouser 02.05.2011 16:51

действительно, я передавал элемент, а нужно было передавать строку.
поменял на <input name= "apply2" type="button" value="Сдвинуть чайник 1" onclick="move('teapot1',50,50)"/>
спасибо!


Часовой пояс GMT +3, время: 16:05.