Передача переменных в функцию JavaScript - PullRequest
1 голос
/ 29 января 2012

Привет, может кто-нибудь, пожалуйста, скажите мне, почему этот код неверен?Я пытаюсь передать два значения переменной в функцию.

Ответы [ 4 ]

2 голосов
/ 29 января 2012

Вам не нужно переносить строку в функции jQuery $(), потому что в вашей функции вы будете делать это в любом случае ($("#"+elem+id).position()).Просто отправьте строку.

Так что это должно сработать:

adjust_pos('#resizable-text', id);

РЕДАКТИРОВАТЬ: Кроме того, либо в вашей функции adjust_pos, либо в передаваемом параметре вы должныудалите #, потому что иначе их будет два.Я рекомендую удалить из функции, поэтому, если по какой-то причине вы хотите отправить селектор классов, вы можете сделать это тоже.

var currentPos = $(elem+id).position();
1 голос
/ 29 января 2012

Похоже, ваша вторая закрывающая скобка не в том месте:

adjust_pos($('#resizable-text'),id);

Обновление

Как было отмечено в комментариях, вам на самом деле не нужно передавать объект jQuery, учитывая, что ваша функция делает с параметром. Вам просто нужно передать идентификатор элемента в виде строки.

Учитывая ваш текущий код, вы можете сделать:

adjust_pos('resizable-text',id);

или с корректировкой кода, которую рекомендовал japrescott (удаление хеша из функции и передача его как части параметра):

adjust_pos('#resizable-text',id);
1 голос
/ 29 января 2012

В соответствии с вашим кодом функции adjust_pos это похоже на adjust_pos('resizable-text', id);

0 голосов
/ 29 января 2012

эта строка;

 adjust_pos($('#resizable-text',id));

должна быть такой;

 adjust_pos($('#resizable-text'),id);
...