11

HTML セレクト ボックスにスクロール バーを追加するにはどうすればよいですか? この動作をエミュレートする JavaScript ライブラリはありますか?

または、とにかく再設計するインターフェイスがあります.2つの選択ボックスがあり、>> & << Filezilla、ノートンコマンダー、アイテムを左右に移動できるトータルコマンダーの種類のインターフェイスを介してアイテムを右の選択ボックスに移動できます.. . (問題は、固定幅の選択ボックスでオーバーフローした単語を表示するように再設計する方法です)

このフォーラムの投稿から、別のを指摘すると、サンプル コードは div を使用してオーバーレイして追加のテキストを表示しますが、ユーザーはオプションにカーソルを合わせる必要があります。当面は使用しますが、実際には私が探しているソリューションではありません。

<html>

<body>
<table>
<tr><td>
<select size="4" id="mySelect" style="width:65px;color:#f98ad3;">
    <option value="1" selected>option 1 The Long Option</option>
    <option value="2">option 2</option>
    <option value="3">option 3</option>
    <option value="4">option 4</option>
    <option value="5">option 5 Another Longer than the Long Option ;)</option>
    <option value="6">option 6</option>
</select>
</td>
<td>
<input type="button" value=">>"/><br>
<input type="button" value="<<"/>
</td>
<td>
<select size="4" id="mySelect" style="width:65px;color:#f98ad3;">
    <option value="1" selected>option 1 The Long Option</option>
    <option value="2">option 2</option>
    <option value="3">option 3</option>
    <option value="4">option 4</option>
    <option value="5">option 5 Another Longer than the Long Option ;)</option>
    <option value="6">option 6</option>
</select>
</td>
</tr>
</table>
</body>
</html>

ターゲット ブラウザは MSIE です。上記のコードから、ユーザーは 'option 1 The long Option' などを見ることができず、各オプションは最大 200 文字である必要があります。

4

2 に答える 2

16

HTML Selectの水平スクロールバーは、ネイティブではサポートされていません。ただし、水平スクロールバーの外観を作成する方法は次のとおりです。

1.最初にcssクラスを作成します

<style type="text/css">
 .scrollable{
   overflow: auto;
   width: 70px; /* adjust this width depending to amount of text to display */
   height: 80px; /* adjust height depending on number of options to display */
   border: 1px silver solid;
 }
 .scrollable select{
   border: none;
 }
</style>

2. SELECTをDIV内にラップします。また、サイズをオプションの数に明示的に設定します。

<div class="scrollable">
<select size="6" multiple="multiple">
    <option value="1" selected>option 1 The Long Option</option>
    <option value="2">option 2</option>
    <option value="3">option 3</option>
    <option value="4">option 4</option>
    <option value="5">option 5 Another Longer than the Long Option ;)</option>
    <option value="6">option 6</option>
</select>
</div>
于 2009-05-26T04:47:27.313 に答える
8

1つのオプションは、選択したオプションを次のように選択リストの上(または下)に表示することです。

HTML

<div id="selText"><span>&nbsp;</span></div><br/>
<select size="4" id="mySelect" style="width:65px;color:#f98ad3;">
    <option value="1" selected>option 1 The Long Option</option>
    <option value="2">option 2</option>
    <option value="3">option 3</option>
    <option value="4">option 4</option>
    <option value="5">option 5 Another Longer than the Long Option ;)</option>
    <option value="6">option 6</option>
</select>

JavaScript

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js"   
  type="text/javascript"></script> 
<script type="text/javascript">
$(document).ready(function(){        
    $("select#mySelect").change(function(){
      //$("#selText").html($($(this).children("option:selected")[0]).text());
       var txt = $($(this).children("option:selected")[0]).text();
       $("<span>" + txt + "<br/></span>").appendTo($("#selText span:last"));
    });
});
</script>

PS:-div#selTextの高さを設定します。そうしないと、選択リストが下にシフトし続けます。

于 2009-05-23T08:33:30.293 に答える