Я не уверен, что полностью понимаю вашу проблему, поскольку здесь происходит несколько вещей.
Отображение оставшихся символов как отрицательных
Я вижу, что с вашим кодом, если вы введете 11 символов, 11-й символ будет удален, но тогда оставшиеся символы показывают «-1» вместо «0». Это ваша жалоба? Причина, по которой это происходит, заключается в том, что вы обрезаете текстовое содержимое редактора до maxCount, но оставшееся значение символов было вычислено до того, как обрезка произойдет, поэтому оно все равно имеет значение maxCount - длина без ограничения. Вы можете легко исправить это несколькими способами, в том числе изменить это:
$(tinyMCE.activeEditor.getContainer()).find("#" + editor.id + "_path_row").html("Remaining chars: " + (value));
к этому:
$(tinyMCE.activeEditor.getContainer()).find("#" + editor.id + "_path_row").html("Remaining chars: " + (value > 0 ? value : 0));
Подсчет пустых символов
Если вы не хотите, чтобы какие-либо пустые символы были включены в число, используйте это:
var txtLen = txt.replace(/\s/g,"").length;
Если вы хотите обрезать только пустые символы с концов, используйте это:
var txtLen = txt.trim().length;