jigen, Hirotomo Kunimatsu
Tokyo, Japan
mailto: microformat hcard
Page 2 / 3«123»
top

prototype.jsでリサイズ出来るtextareaを作る

リサイズ出来るtextareaを作るjavascriptのフレームワークであるprototype.jsでhtml入力欄であるtextareaをリサイズ(サイズ変更できる)ようにするための方法だそうです。普段使いませんが文章のような入力が多いものに関しては使えそうなので、( ..)φメモメモメモ。

以下のコードを使うそうです。内容を見るとhtmlのrowsとcolsを計算して入力があった場合はサイズを自動的に調整するものっぽい。

var ResizingTextArea = Class.create();

ResizingTextArea.prototype = {
defaultRows: 1,

initialize: function(field)
{
this.defaultRows = Math.max(field.rows, 1);
this.resizeNeeded = this.resizeNeeded.bindAsEventListener(this);
Event.observe(field, "click", this.resizeNeeded);
Event.observe(field, "keyup", this.resizeNeeded);
},

resizeNeeded: function(event)
{
var t = Event.element(event);
var lines = t.value.split('\n');
var newRows = lines.length + 1;
var oldRows = t.rows;
for (var i = 0; i <lines.length; i++)
{
var line = lines[i];
if (line.length>= t.cols) newRows += Math.floor(line.length / t.cols);
}
if (newRows> t.rows) t.rows = newRows;
if (newRows
}
}

んで、実際使う時はこんな感じ(↓)?

<textarea name="textarea" onload="new ResizingTextArea(this);"></textarea>
スポンサードリンク

さて、関係ないですが先日エントリーしたjQueryがやっぱり面白そう。mootoolsと併せてこっちも追っていきたいなぁ。と思った次第(本当に関係ないな。スンマヘン)。


2007/01/17 16:41:49200716:41

Yahoo!UI Library0.11リリース

YUI Library Release 0.11: A Host of Enhancements and a New Logger Control

スポンサードリンク

なにかと話題(?)のYahoo! User Interface Libraryですが、0.11にバージョンが上がったようです。

今回の目玉はデバッグ用のログ表示機能が付いた事。上の画像の右側に付いてるのがその表示部分。こういうのがライブラリに付いてるのは珍しいのでは?なかなか使いやすそうです。う~んここまで出てくると使ってみたくなるなぁ。重たくならないかなぁ?

examples


2006/07/11 18:45:49200618:45

ボタン作成 Buttonator

buttonator

スポンサードリンク

ボタンをプレビューしながら作ってくれるサービス。ちょい重いけど、UI的に参考になるな~


2006/05/23 12:37:49200612:37
Page 2 / 3«123»
アリ「ここからメニューだすよ」
アリ「ごちそういっぱーい」
アリ「腹へったー」
アリ「働けー働けー♪」