2014-01-04 7 views
0

Я пытаюсь создать textarea, который автоматически переделывает вверх. У меня есть немного кода, который отлично работает при изменении размера, нажав вниз, но мне это нужно, поэтому весь контент в текстовой области перемещается вверх, чтобы открыть новую строку, а база текстовой области зафиксирована в ее положении , (Дайте мне знать, если я не объяснить, что очень хорошо!) Код у меня до сих пор:Динамическое изменение размера textarea вверх

document.getElementById('texttype').addEventListener('keyup', function() { 
    this.style.height = 0; 
    this.style.height = this.scrollHeight + 'px'; 
}, false); 
+0

Что вы имеете в виду размер вверх? –

+0

Что вы хотите, чтобы этот пример? Он работает, вероятно, правильно: http://jsfiddle.net/cdDWz/ – mrzmyr

+0

Например, если вы дойдете до нижней части текстовой области для обновления статуса, она добавит больше места ниже того, что уже написано, расширяя область вниз. В этом случае верхняя часть области текста находится в фиксированном положении. Я хочу сделать что-то подобное, но зафиксировать нижнюю часть текстовой области и дать больше места, нажав текст, который был написан, чтобы открыть новую пустую строку. –

ответ

0

Это ответили Tewathia в комментариях, но я думал, что я должен добавить ответ, чтобы я мог проверить это от. Fiddle: http://jsfiddle.net/afQmf/

HTML:

<div><textarea name="" id="texttype"></textarea></div> 

CSS:

div { 
    position:relative; 
    height:200px; 
} 

    #texttype { 
    width:200px; 
    position: absolute; 
    bottom:0; 
} 

Javascript:

document.getElementById('texttype').addEventListener('keyup', function() { 
    this.style.height = 0; 
    this.style.height = this.scrollHeight + 'px'; 
    }, false); 
0

автоматически повторно размеры вверх и вниз HTML:

<textarea onkeyup="autoGrow(this)"></textarea> 

Javascript:

function autoGrow (oField) { 
    if (oField.scrollHeight > oField.clientHeight) { 
     oField.style.height = oField.scrollHeight "px"; 
    }else{ 
     oField.style.height = 0+"px"; 
     oField.style.height = oField.scrollHeight "px"; 
    } 
} 
Смежные вопросы