Причина в том, что NobleCount не сбрасывает прослушиватели событий, которые он связывает. Поэтому, когда вы вызываете .NobleCount () во второй раз, хотя он добавляет прослушиватель событий, который не позволит вам ввести большее количество max_chars, старый все еще там, поэтому он будет продолжать блокировать вас от ввода меньшего количества max_chars.
Решение состоит в том, чтобы добавить 2 вызова функции в файл NobleCount:
В строках 285 и 294 изменить:
-- $(t_obj).keydown(function(e) {
++ $(t_obj).unbind('keydown').keydown(function(e) {
-- $(t_obj).keyup(function(e) {
++ $(t_obj).unbind('keyup').keydown(function(e) {
(- это старая строка, ++ - строка для ее замены)
Рабочий пример: http://jsfiddle.net/Fm5dC/
(Я буквально скопировал весь его js-файл из github в jsfiddle, поэтому это выглядит ужасно, хотя, если вы прокрутите кадр javascript, вы увидите, что я реализовал вышеупомянутое изменение)
Я, вероятно, должен упомянуть, что это не лучший обходной путь, потому что если у вас есть какой-нибудь другой keydown
или keyup
слушатель, он также удалит их, хотя я показал вам, где проблема, это не так сложно это исправление более прочное.
Также, пожалуйста, свяжитесь с автором плагина с описанием ошибки, этого обходного пути и т. Д., Чтобы он мог реализовать это для масс.