2013-04-26 2 views
1

Я хочу взять идентификатор div и установить это значение в конце имени переменной jquery. Например, если я нажму на DIV с идентификатором «2», я хочу функцию, чтобы создать переменную с именем «вар doThis2» вместо просто «вар doThis»установить значение переменной в другом имени переменной

Вот мой код, как сейчас:

var clickedComment = false; 
    $('.comment').click(function (event) { 

     var id = event.target.id; 
     // I am wanting ^this id value to be added to the end on clickedComment 

     if (clickedComment == true) { 
      $("." + id).animate({ left: '+=85.2%' }, 250); 
      clickedComment = false; 
     } else { 
      $("." + id).animate({ left: '-=85.2%' }, 250); 
      clickedComment = true; 
     } 
    }); 

Любая помощь или даже более эффективный способ сделать эту работу?

ответ

1

Вы могли сделать это с eval, но я не уверен, что вы на самом деле хотите для этого. Почему бы не сохранить состояние щелчка в обычном объекте? Например.

var clickedComments = {}; 

И затем использовать это:

$('.comment').click(function (event) { 
    var id = event.target.id; 

    if (clickedComments[id] == true) { 
     $("." + id).animate({ left: '+=85.2%' }, 250); 
     clickedComments[id] = false; 
    } else { 
     $("." + id).animate({ left: '-=85.2%' }, 250); 
     clickedComments[id] = true; 
    } 
}); 
+0

Я получил код для работы с рекомендацией Пола копоти, но я должен был настроить несколько вещей. Вот мой последний рабочий код: var clickedComment = {}; var id; $ ('. Comment'). Hover (функция (событие) { id = event.target.id; clickedComment [id]; }); $ ('. Comment'). Click (function (event) { if (clickedComment [id] == true) { $ ("." + Id) .animate ({left: '+ = 85.2% }, 250); clickedComment [id] = false; } else { $ ("." + Id) .animate ({left: '- = 85.2%'}, 250); clickedComment [id] = true ; } }); Спасибо! – 2013-04-27 02:15:51

0

Вы можете сделать это

var myArrayOfVars['vardoThis'+id] = value

, а затем вы можете получить доступ к переменной с ур: myArrayOfVars['vardoThis'+id]

Смежные вопросы