jquery-autocomplete(独立)设置宽度

时间:2011-04-19 22:27:29

标签: javascript jquery-autocomplete

我很高兴使用这个自动填充器:http://code.google.com/p/jquery-autocomplete/

我需要更改生成的ul列表的宽度,但不能通过CSS:

.acResults {
    width: 348px;
}

似乎每次生成结果时都会在javascript中设置宽度:

$('.acResults').width(348);

有效,但只有一次(打字后覆盖)。 我已尝试在“showResult”和“onItemSelect”中使用上述函数,但之后会立即覆盖它们。

提前致谢。

3 个答案:

答案 0 :(得分:1)

您可以使用!important修复样式,尽管这不是一个好习惯。例如:

.acResults {
    width: 348px !important;
}

答案 1 :(得分:0)

只需删除(或更改)设置列表宽度的插件本地副本中的行,即:

extraWidth = this.dom.$results.outerWidth() - this.dom.$results.width();
this.dom.$results.width(this.dom.$elem.outerWidth() - extraWidth);

您可以将其更改为:

this.dom.$results
    .width(Math.max(this.dom.$elem.outerWidth() - extraWidth, 348));

如果您正在使用缩小版本,请抓取未经修改的版本,更改它,然后通过您选择的缩小器运行它。

或者,您可以创建一个接收最小列表宽度选项的补丁,并将其提交给dylan.verheul,或者在issues page上提交新的功能请求。

答案 2 :(得分:0)

只需增加'ac_results'的宽度,它就会隐藏y溢出

.ac_results ul {
width: 180px;
/* 
increase width to hide overflow
*/
list-style-position: outside;
list-style: none;
padding: 0;
margin: 0;

}