var $arrow = $(this);
var $sibling = $arrow.siblings('span.arrow');
var $score = $arrow.siblings('span.score');
var vote = $arrow.hasClass('up') ? 'up' : 'down';
var alreadyVoted = $sibling.hasClass('voted');
if (!USER_LOGGED_IN)
{
alert('You must be logged into vote');
}
else if (!$arrow.hasClass('voted'))
{
if (alreadyVoted)
$sibling.removeClass('voted');
$arrow.addClass('voted');
$score[0].innerHTML = parseInt($score[0].innerHTML) + ((vote == 'up') ? 1 : -1);
}
У меня есть кнопки "за" и "против". Рядом с этими кнопками отображается «текущая оценка», которую я хотел бы увеличивать/уменьшать при подаче голоса.
Например, если они загружают страницу и видят, что счет равен 200
. Когда они проголосуют, оценка изменится на 201
. Когда они голосуют против, оценка должна измениться на 199
. Почему? Потому что, если они проголосовали против после того, как проголосовали за (передумали), тогда голосование должно исходить из исходной оценки. Не новый счет, который они создали путем голосования.
По сути, если они проголосуют за, а затем проголосуют против, оценка в настоящее время возвращается к исходной оценке. Их голос не подается.
У меня возникли проблемы с выполнением этой работы, поэтому их голос принят...