JSFiddle:http: //jsfiddle.net/qPvch/56/
字数限制功能似乎运作良好。但是,当我输入最大单词数(演示中为 5),然后在文本区域外单击时,文本框内的单词突然变成了一个巨大的字符串(没有空格!)。
Javascript:
var maxWords = 5;
jQuery('textarea#what').keypress(function() {
var $this, wordcount;
$this = $(this);
wordcount = $this.val().split(/\b[\s,\.-:;]*/).length;
if (wordcount > maxWords) {
jQuery(".word_count span").text("" + maxWords);
return false;
} else {
return jQuery(".word_count span").text(wordcount);
}
});
jQuery('textarea#what').change(function() {
var words = $(this).val().split(/\b[\s,\.-:;]*/);
if (words.length > maxWords) {
words.splice(maxWords);
$(this).val(words.join(""));
}
});
HTML:
<textarea name="what" id="what" rows="1"></textarea>
<div class="word_count">
Word count: <span></span>
</div>