2011-09-10 16 views
1

私はtextareaを拡張しようとしていますが、何とか失敗します。それは内容より大きくなります。このjsfiddleをご覧ください。なぜそれは失敗するのですか?Textareaの問題

EDIT:私の質問が十分にはっきりしていないように見えるので、それに明確さを入れてください。私が望むのは、コンテンツがオーバーフローしなくなったためにスクロールバーが消えるようなサイズのテキストエリアに任意のテキストエリア(コンテンツがオーバーフローするためスクロールバーが表示される可能性があります)を有効にすることです。

私の解決策はなぜ機能しませんか?それは私が不思議に思っているものです。 "thisissomeverylongwordintheworld"を削除すると、意図したとおりに動作します。

EDIT 2:私は、Chromeでjsfiddleをテストし、テキストエリアには、スクロールバーを持っている...ので、私はscrollWidthscrollHeightといくつかの問題があると思います...または私は右のそれを理解していません? :)

+0

あなたはそれをどのような次元で与えようとしていますか? –

+0

テキストエリアを拡張しようとしていますか?私の視点から見ると、それは完全に拡大しているようです。あなたは何をしようとしているのですか?レコードの場合、この場合、コンテンツはテキストであり、コンテンツよりも大きくないか、またはウィンドウ視点を意味しましたか? –

+0

Peter Olson、あなたは私が投稿したjsfiddleでそれを見るでしょう。 Kalle H.Väravas、textareaは、テキストによるべきであるよりはるかに高くなります。 – Flow

答えて

1

たぶん、あなたはcontenteditable=trueにDIVを使用する必要があります。

http://jsfiddle.net/6S77z/6/

+0

私はその要件の私の答えを更新しました:) – Joe

+0

それは幅を増やします。幅は同じでなければなりません。高さはスクロール可能なので変更する必要があります。http://jsfiddle.net/6S77z/3/ – Flow

+0

で見ることができます。申し訳ありませんが、「no css」の意味ではありません。私は上記の問題について書いた。 – Flow

0

この質問はまだ明らかではありません。しかし、たぶんあなたは(あなたがアイデアを取った後は、今ではないならば)、自動伸長のtextareaプラグインが必要です。これは私のウェブサイトで実行されているスクリプトです、元の著者は不明です。

ポイントは、そのときの文書、あるhttp://jsfiddle.net/hobobne/6S77z/9/
(あなたのテキストを削除してください、それは[テキストを追加または削除]あなたの行動に採用されます):しかし、それは...

ライブデモが動作します(あなたのウェブサイト)が読み込まれると、テキストエリア内のテキスト量が計算されます。次に、テキスト量/長さに合わせてテキストエリアを自動拡張します。それはスクロールバーを生成しません(あなたの要件を食べる)、doest use css(あなたの要件)と余分なスペースを残しません。(よく、1行..必要があります、下部にある)。

私はマークどこプラグインが開始され、終了...またトリガーです:

$('textarea').autogrow(); 

PS:あなたがCSSまたはcols=""でテキストエリアの幅を設定することができますが。

EDIT:なぜあなたのコードの作業を行います。

機能していませんか?このコードは、テキストの量を計算し、それに応じてテキスト領域を調整するためのものです。それはそれがするものです。テキストエリアにはスクロールバーがありません:

enter image description here

もなしスクロールバーにあり、しかし、あるテキストエリアが非常に長いwindow..as上のスクロールバーが..あなたがテキストエリアにはスクロールバーをしたいんか、と窓?

これは不可能です。私は、あなたの要件があるわけない:重要幅テキストエリアを変更カント重要

  • ウィンドウに

    • ませCSS
    • テキストエリアに何もスクロールバー重要
    • ませんスクロールバーを
    • 任意の文字を削除します重要

    これらの要件は、NOT POSSIBLEを意味します。続行したい場合は、クリティカルの要件を明記する必要がありますが、スクロールバーはまったくありません。それは物理的なものではありません。ボックスを変更せずに小さなボックスの内側に大きなボックスを置くことはできません寸法!

  • +0

    それは素晴らしいですが、なぜ私のソリューションがうまくいかないのですか?それは私が思っているものです。もし私が "thisissomeverylongwordintheworld"を削除すると、それは意図したとおりに動作します。 – Flow

    +0

    @Flow:あなたのコードは、テキストエリアにスクロールバーを生成していません。あなたは基本的にここであなた自身の尾を追いかけています。あまりにも多くのコンテンツがある場合は、どこかのスクロールバーが必要です。テキストエリアまたはウィンドウのいずれか。あなたのスクリプトはスクロールバーを生成しないという事実に取り組んでいます。そして、あなたのjQueryでCSSを使用していると指摘しておきましょう。でも、まだCSSです。 –

    +0

    最新のOperaで動くと、FYIにはあなたのデモにスクロールバーがあります。 FFでもスクロールバーはありません。 – Flow