Понадобилось сделать авто увеличение textarea и наткнулся на дле форум,
НО мне не хотелось для это ерунды подключать библиотеку - jQuery ...
.. все можно сделать на много проще..
1. Открываем - addcomments.tplи смотрим какой class в комменте -
примерно так выглядит -
у меня - f_textarea ...
2. Находим в css класс и меняем высоту на минимальную высоту =)
кароче примерно так будет -
меняем в нем высоту ....
3. Теперь в addcomments.tpl добавляем
Demo для непонятливых - _http://www.vadims.info/test
Вуаля =) Все Работает!
примерно так выглядит -
<textarea name="comments" class="f_textarea" id="comments" >{text}
у меня - f_textarea ...
2. Находим в css класс и меняем высоту на минимальную высоту =)
кароче примерно так будет -
.f_textarea {
color: #757575; /* ! */
font-size: 11px; /* ! */
font-family: tahoma; /* ! */
background-image: url(../images/dlet_field_o.gif);
background-repeat: repeat-x;
width: 459px;
height: 156px;
border: 1px solid #e0e0e0;
color: #757575; /* ! */
font-size: 11px; /* ! */
font-family: tahoma; /* ! */
background-image: url(../images/dlet_field_o.gif);
background-repeat: repeat-x;
width: 459px;
height: 156px;
border: 1px solid #e0e0e0;
меняем в нем высоту ....
.f_textarea {
color: #757575; /* ! */
font-size: 11px; /* ! */
font-family: tahoma; /* ! */
background-image: url(../images/dlet_field_o.gif);
background-repeat: repeat-x;
width: 459px;
min-height: 156px;
border: 1px solid #e0e0e0;
color: #757575; /* ! */
font-size: 11px; /* ! */
font-family: tahoma; /* ! */
background-image: url(../images/dlet_field_o.gif);
background-repeat: repeat-x;
width: 459px;
min-height: 156px;
border: 1px solid #e0e0e0;
3. Теперь в addcomments.tpl добавляем
<script language="javascript">
function countLines(strtocount, cols) {
var hard_lines = 0;
var last = 0;
while ( true ) {
last = strtocount.indexOf("\n", last+1);
hard_lines ++;
if ( last == -1 ) break;
}
var soft_lines = Math.ceil(strtocount.length / (cols-1));
var hard = eval("hard_lines " + unescape(">") + "soft_lines;");
if ( hard ) soft_lines = hard_lines;
return soft_lines;
}
function cleanForm() {
var the_form = document.getElementById('comments');
the_form.rows = countLines(the_form.value,the_form.cols) +1;
setTimeout("cleanForm();", 500);
}
cleanForm();
</script>
function countLines(strtocount, cols) {
var hard_lines = 0;
var last = 0;
while ( true ) {
last = strtocount.indexOf("\n", last+1);
hard_lines ++;
if ( last == -1 ) break;
}
var soft_lines = Math.ceil(strtocount.length / (cols-1));
var hard = eval("hard_lines " + unescape(">") + "soft_lines;");
if ( hard ) soft_lines = hard_lines;
return soft_lines;
}
function cleanForm() {
var the_form = document.getElementById('comments');
the_form.rows = countLines(the_form.value,the_form.cols) +1;
setTimeout("cleanForm();", 500);
}
cleanForm();
</script>
Demo для непонятливых - _http://www.vadims.info/test
Вуаля =) Все Работает!