Простой подход состоит в том, чтобы использовать элемент div и поместить содержимое редактора в этот div.DIV должен был установить ширину (с использованием CSS).
<div class="calculation_preview"></div>
И CSS должно быть что-то вроде:
div.calculation_preview {
width: 200px;
visibility: hidden;
position: absolute;
top: 0px;
left:0px;
}
После каждого нажатия клавиши, вы можете измерить высотуdiv (используя функцию offsetHeight на div).Если он слишком высокий, удалите последний введенный пользователем символ.
Чтобы восстановить предыдущее содержимое, вы можете объявить переменную javascript, например:
var savedContent = "";
Если у вас есть начальныйсодержимое в вашем редакторе, то вы должны инициализировать переменную с этим содержимым.Для каждого нажатия клавиши вы делаете следующее:
// Get current editor content:
var content = tinyMCE.activeEditor.getContent({format : 'raw'});
// Measure the new height of the content:
var measurer = document.getElementById("calculation_preview");
measurer.innerHTML = content;
if(measurer.offsetHeight > 100) {
// Content is too big.. restore previous:
tinyMCE.activeEditor.setContent(savedContent, {format : 'raw'});
} else {
// Content height is ok .. save to variable:
savedContent = content;
}