замените функцию jquery на var - PullRequest
0 голосов
/ 02 февраля 2012

Я пытаюсь заменить функцию изменения jquery на var, но она не работает (ошибка синтаксиса)

Triing что-то вроде этого:

var foo = 'next()';
$(this).+foo+.show();

Можно ли как-то это осознать? foo - это переменная, которая изменяется на 'prev ()' в другом, если условие

Ответы [ 3 ]

3 голосов
/ 02 февраля 2012

попробуйте это:

var foo = 'next';
$(this)[foo]().show();
3 голосов
/ 02 февраля 2012

Сделайте это следующим образом:

var foo = 'next';
$(this)[foo]().show();

Установив только имя метода для переменной, вы можете использовать нотацию [] и использовать переменную для получения свойства nextобъект jQuery.

Это эквивалентно ...

$(this)['next']().show();

, что эквивалентно ...

$(this).next().show();
0 голосов
/ 02 февраля 2012

У меня есть два варианта:

var foo = next; // use the OBJECT here, not a string
$(this).foo().show();

OR

var foo = false;
if (foo)
  $(this).next().show()
else
  $(this).prev().show();
...