Показать сообщение отдельно
  #4 (permalink)  
Старый 19.12.2012, 22:28
Профессор
Отправить личное сообщение для Hoshinokoe Посмотреть профиль Найти все сообщения от Hoshinokoe
 
Регистрация: 08.01.2012
Сообщений: 253

SER,

Проблема в этой строке:
var nr = pr + 2

pr - у вас строка и операция сложения для строк есть, поэтому второй аргумент преобразуется тоже в строку. В первом же случае операция минус не существует для строк, только для чисел, поэтому складываются два числа.
var res1 = "222" + 111; // выдаст "222111"
var res2 = "222" - 111; // выдаст 111
alert('res1 = ' + res1 + '\n res2 = ' + res2);
1-й вариант:
преобразовывать значение в число
var pr = parseInt($('#imgwrape').attr('imgnumber'));
2-й вариант (более правильный):
использовать data аттрибут и преобразование делать не прийдется
var pr = $('#imgwrape').data('imgnumber');
...
$('#imgwrape').data('imgnumber', nr);

Последний раз редактировалось Hoshinokoe, 19.12.2012 в 22:34.
Ответить с цитированием