我想根据所选索引(字符串)所需的宽度调整选择列表的大小。举例来说,我有一个3字符串的列表,简短,中等,loooooong;我不希望选择列表自动地像它的最大元素一样宽,而应该和它所选的元素一样宽。动态调整选择列表的大小(Safari)
我试过的第一种方法:document.getElementById('selectList').style.width = (selectedText.length * 6) + 'px';
其中selectedText是一个字符串,而6是对字符宽度的一个不好的估计。如果没有等宽字体,则无法正常工作。
我尝试的下一个方法是将offscreen div(top:-9999px)的innerHTML设置为所选索引,然后:document.getElementById('selectList').style.width = document.getElementById('hiddenDiv').offsetWidth;
此方法的问题在于宽度也不正确,与实际选择的字符串相比,长字符串使选择列表的路线变长。
任何想法如何根据字符串宽度/长度动态调整此选择列表的大小?
你想要的元素来改变它的宽度,在同一行意味着一切,右边会跳来跳去,或者只是下拉部分? – 2010-08-06 01:16:59