javascript - 如何使选定选项的宽度为当前选定选项的文本宽度?

标签 javascript html css html-select

我正在尝试使选择选项具有当前选定选项的宽度。

我的代码是选择选项下拉菜单的标准 HTML:

<select name="search_options">
  <option value="all">All</option>
  <option value="entertainment">Entertainment</option>
  <option value="newsandpolitics">News &amp; Politics</option>
  <option value="sports">Sports</option>
  <option value="lifestyle">Lifestyle</option>
  <option value="health">Health</option>
  <option value="scienceandtech">Science &amp; Tech</option>
</select>

我一直在尝试只使用 CSS 或 Javascript,不使用 JQuery,但我无法弄清楚。

我已经发现了几个 JQuery fiddle ,但没有 CSS/Javascript fiddle 。

http://jsfiddle.net/5AANG/4/

http://jsfiddle.net/qqcc5/

有什么方法可以实现这一点,与上述 2 个 fiddle 相同,仅使用 CSS 或纯 Javascript?

任何指向正确方向的指示都会很棒。

最佳答案

根据您的第二个链接,您可以这样做:

var selectId = document.getElementById("yourSelect");

selectId.onchange=function(){
   var selectedValue = selectId.options[selectId.selectedIndex].value; 
   var selectedText = selectId.options[selectId.selectedIndex].text;

   selectId.style.width = 20 + (selectedText.length * 8) + "px";
}

测试: http://jsfiddle.net/ndquxquu/

关于javascript - 如何使选定选项的宽度为当前选定选项的文本宽度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35567067/

相关文章:

javascript - 如何使用selenium点击由javascript生成的元素

javascript - 如何计算自定义值的总和

javascript - 在溢出时隐藏内联 block

html - 下拉菜单不适用于手机用户

jquery - 悬停对井内表格的影响

javascript - 如何在客户端设置 JS Require 工具来 require ('net' )?

html - Cufon 悬停在鼠标移出时保持悬停状态

javascript - 如何使用 css 仅定位 div 内的特定 <span> 标签?

css - Drupal 7 Bootstrap .active css 无法覆盖?

html - 悬停时我想刷新我的页面