2013-04-25 53 views
0

我需要從textarea放入由寬度和高度限制的div。 這裏是我的jsfiddle:http://jsfiddle.net/ptCoder/8XL7n/30/文本從textarea到有限寬度和高度的div

例如:我有一個div寬度100px和最大高度100px。我需要在textarea中輸入文本,這個文本將出現在div框中。

下面是另一個例子,但效果不好:Limit text length based on fitting text inside fixed width and height box

我需要有執行如刪除,退格鍵和複製/粘貼。

我試圖阻止高度尺寸與此代碼:

if (currentHeight >= window.maxHeight) { 
    //alert('sim'); 
    var $th = $(this); 
    $th.val($th.val().replace(/./, function(str) { 
     return ''; 
    })); 
    e.preventDefault(); 
} 

但我有與刪除,退格鍵和複製粘貼等蟲子......

另一個問題是文本的textarea消失。 ..

+0

能否請您解釋一下什麼是你想怎麼辦?你的動機是什麼? – 2013-04-25 17:58:52

+1

爲什麼不使用'contenteditiable'? – howderek 2013-04-25 18:02:57

+0

爲什麼人們在發佈問題後逃跑......我更加興奮地排除這個問題,而不是她/他將其排序..:D:P – 2013-04-25 18:08:25

回答

1

爲什麼你不能只使用最大寬度和最大高度?

#target { 
    max-width:200px; 
    max-height:200px; 
} 

這應該限制目標的大小。

+0

不要工作,但謝謝。 – ptCoder 2013-04-25 18:23:45

+0

@ptCoder也許你可以擴展你的問題的參數呢?限制盒子的大小,你想完成什麼?還是比這更多? – smilebomb 2013-04-25 18:29:51

+0

謝謝大家。 基本上我需要在textarea中編寫文本,以便它不會超過div中的預定義大小。 – ptCoder 2013-04-26 01:38:08

1

你可以試試這個:

<script> 
$(document).ready(function(){ 
    $('#inputData').keydown(function(){ 
    limitText($('#inputData'),100,100); 
    }); 

    $('#inputData').keyup(function(){ 
     limitText($('#inputData'),100,100); 
     }); 
}); 

function limitText(limitField, limitCount, limitNum) { 
    if (limitField.val().length > limitNum) { 
     limitField.val(limitField.val().substring(0, limitNum)); 
    } else { 
     limitCount=limitNum - limitField.val().length; 
    } 
} 
</script> 
    <textarea maxlength="100" class="mycss" id="inputData" name="data" spellcheck=false wrap="physical"></textarea> 
相關問題