我有一个包含不同选项的 select
元素。通常情况下,select
元素的宽度将根据最大的 option
元素获得,但我希望 select
元素具有默认 option
值的宽度,即较短的宽度。当用户选择另一个 option
后,select
元素应该调整大小,以便整个文本始终可见于元素中。
$(document).ready(function() {
$('select').change(function(){
$(this).width($('select option:selected').width());
});
});
问题:
- 在Chrome (Canary)浏览器上,它总是返回0的宽度。
- 在Firefox浏览器上,当选择较短的选项时,宽度会被添加而不是调整大小。
- Safari浏览器:与Chrome相同的结果。
option
元素的宽度没有可靠的方法。相反,您可以获取text
属性的长度,并根据此估计所需的宽度。 - Rory McCrossan