1

スピナーがあります-テキストフィールドやテキストエリアではありません

<input type="number" />

ここに画像の説明を入力してください

コントロールがクリックされたときにフィールドに点滅するカレットがないようにすると便利です。

ここに画像の説明を入力してください

HTMLテキスト入力フィールドでキャレットを非表示にする方法の答えは

フィールドが無効または読み取り専用の場合はスピナーが実行されないため、もちろん機能しません。

スピナーではないテキストフィールドの点滅カーソルを非表示にすることもできません

また、 jQueryUIスピナーにも同じ問題があります

4

2 に答える 2

1

css:

.your-field{
    color: transparent;
}
  1. を使用してフィールドにラッパーを追加し、を使用してフィールドposition: relative;span/div/whatever後にラッパーを追加しますposition: absolute

  2. スパンを正しく配置します(左上が入力テキストの開始位置と重なる必要があります)

  3. にイベントハンドラーを追加しますkeyup/keydown/custom arrow click/any event that changes input val
  4. ハンドラー関数(jQuery):

    function() { $('.your-absolute-positioned-element').text( $('.your-field').val() ); }
    
于 2013-01-29T14:42:18.497 に答える
1

点滅はネイティブ入力表現の一部です。A)入力を非表示にし、B)コンテンツを他の場所に複製するためにハックする必要があります。

A)を使用することをお勧めしcolour: transparentます。古いブラウザのサポート(古いIEはこれを好まないことはわかっています)の場合はvisibility: hidden、他の手法を使用できますが、フォーカスに対処するのは困難です。

B)入力のラッパーを作成し、position: relativeその直後に、入力値が変更されるたびに一致するスパンを作成します。

簡単なcodepenの例を次に示します。

http://codepen.io/barneycarroll/pen/beFgm

于 2013-01-29T14:51:16.557 に答える