0

我解决了在下拉菜单中不显示长值的 IE 选择宽度问题,如本文建议的那样:http: //jquerybyexample.blogspot.com/2012/05/fix-for-ie-select-dropdown-with-fixed。 html

不幸的是,当您的所有选项都小于默认宽度设置时,此解决方案存在问题。在这种情况下,此代码:

drpLst.style.width = 'auto';

使组合在鼠标按下时变小,在选项单击时变大,这使得“跳跃效果”不好

我用这段代码解决了它:

                         <script type='text/javascript'>
                           function SetWidthToAuto(drpLst, c) {            
                                 drpLst.style.width = 'auto';  

                                  if(drpLst.clientWidth &lt; c) {
                                      drpLst.style.width = c.toString(); 
                                   }
                                   else {
                                      drpLst.style.width = 'auto';  
                                   } 
                               }  
                           function ResetWidth(drpLst, c) {  
                               drpLst.style.width =c.toString(); 
                               }  
                         </script>

c 参数是我希望我的comoBox 的宽度。

不幸的是,它以另一个问题结束 - 更改选项后,未显示所选值(实际上已选择)。问题在于解决“跳跃效应”的代码片段:

drpLst.style.width = c.toString();

因为删除后它工作正常。

我在查看站点上使用 jsf 和 facelests。

我会感谢任何建议。

4

0 回答 0