它不是那样做的。
通常,“样式化”选择只是另一种类型的元素,其中应用了 css 颜色、渐变、图像等,以赋予它下拉的感觉。
例如,您可以使用下拉菜单来代替它。
css
.input.select { background: url('downarrow.jpg') no-repeat right top; }
.selectOptions { display: block; width: 100px; height: 200px; background: white; }
标记
<div>
<input type="text" class="select" value="click me" />
<div class="selectOptions">
<ul>
<li val="some custom value">option</li>
</ul>
</div>
</div>
在 jquery 中你会做这样的事情:
$('input.select').bind('click', function() {
$(this).find('div.selectOptions').toggle();
});
$('div.selectOptions ul li').bind('click', function() {
var val = $(this).attr('val');
// update the input upon click.
var input = $(this).parent().parent().parent().find('input.select');
input.val( val );
});
当然,您可以只使用其他人的跨浏览器库,该库已经完成了此类工作……例如 jQuery UI。