html选择滚动条

时间:2009-05-23 07:43:35

标签: javascript html scrollbar

如何在html选择框中添加滚动条?是否有任何模拟此行为的JavaScript库?

或者无论如何重新设计,我有2个选择框的界面,项目可以通过>>转移到右边的选择框&安培; << Filezilla,诺顿指挥官,总指挥官类型的接口,物品可左右移动......(问题是如何重新设计以查看固定宽度选择框中的溢出字)

来自this forum post,指向另一个example,示例代码将使用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。从上面的代码中,用户看不到'选项1长选项'等...并且每个选项最多应该有200char。

2 个答案:

答案 0 :(得分:15)

本机不支持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>

答案 1 :(得分:7)

一个选项是在选择列表上方(或下方)显示所选选项,如下所示:

<强> 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的高度,否则它将继续向下移动选择列表。