Joomla 3x中Foreignkey输入框宽度自动计算位置咨询
Joomla 3.x 中ForeignKey下拉框宽度计算逻辑的位置解析
你遇到的这个带chzn-container类的输入框,是Joomla 3.x默认用Chosen插件美化的ForeignKey下拉选择器,它的宽度自动计算逻辑在以下位置:
- 核心逻辑文件:Joomla自带的Chosen插件JS文件,路径为
media/jui/js/chosen.jquery.js(压缩版是chosen.jquery.min.js) - 具体计算方法:文件中的
_setSingleWidth函数,这个函数会读取原始隐藏<select>元素的offsetWidth值,然后将该值设置为生成的.chzn-container-single容器的行内宽度样式 - 触发时机:页面加载时,Joomla会自动调用Chosen的初始化方法(类似
jQuery("#jform_csi_division").chosen()),此时就会执行宽度计算逻辑
如果需要修改这个宽度,不用修改核心JS文件,也可以在初始化时手动指定宽度参数,比如:
jQuery("#jform_csi_division").chosen({width: "100%"});
这样就能覆盖自动计算的结果,比直接用CSS强制覆盖更稳妥。
内容的提问来源于stack exchange,提问作者Rifbsss
相关产品推荐
相关产品推荐

