在jQuery UI自动完成中关闭element.style

在jQuery UI自动完成中关闭element.style,jquery,jquery-ui,jquery-plugins,jquery-autocomplete,jquery-ui-autocomplete,Jquery,Jquery Ui,Jquery Plugins,Jquery Autocomplete,Jquery Ui Autocomplete,我希望定制jQueryUI的自动完成结果的CSS。问题在于,每当在输入框中输入查询时,插件会自动生成动态元素样式(例如,宽度、顶部、左侧、右侧值) 我不想要任何元素样式,我不知道如何在插件的代码中更改它。有什么想法吗?或者,也许有一种方法可以在不改变插件代码的情况下,使用不同的CSS超越元素样式。这样的想法也会受到欢迎。插件生成的结果框完全可主题化。每个元素都有一个类名,如下所示 <input class="ui-autocomplete-input"/> <ul class

我希望定制jQueryUI的自动完成结果的CSS。问题在于,每当在输入框中输入查询时,插件会自动生成动态元素样式(例如,宽度、顶部、左侧、右侧值)


我不想要任何元素样式,我不知道如何在插件的代码中更改它。有什么想法吗?或者,也许有一种方法可以在不改变插件代码的情况下,使用不同的CSS超越元素样式。这样的想法也会受到欢迎。

插件生成的结果框完全可主题化。每个元素都有一个类名,如下所示

 <input class="ui-autocomplete-input"/>
<ul class="ui-autocomplete ui-menu ui-widget ui-widget-content ui-corner-all">
  <li class="ui-menu-item">
    <a class="ui-corner-all">item 1</a>
  </li>
  <li class="ui-menu-item">
    <a class="ui-corner-all">item 2</a>
  </li>
  <li class="ui-menu-item">
    <a class="ui-corner-all">item 3</a>
  </li>
</ul> 


  • 以下是我的方法。我创建了另一个元素并“隐藏”了自动完成结果。为了触发autocomplete中的正常事件,可以将autocomplete results容器的宽度和高度设置为0,并使用浮点数(不确定是否需要),然后将溢出设置为hidden。当drop item容器出现时,我清除结果容器。当项目被渲染时,_renderItem函数会将其附加到结果容器中

    $('#faq-search').autocomplete({'source': questions}, {
        matchContains: true,
        appendTo: "#faq-search-results .autocomplete-results",
        change: function(e, ui){
        },
        close: function(e, ui){
        },
        search: function(e, ui){
            $('#faq-search-results > ul').empty();
        },
        select: function(e, ui){
            location.assign(ui.item.link);
        }
    }).data( "autocomplete" )._renderItem = function( ul, item ) {
        return $("<li></li>")
            .data("item.autocomplete", item)
            .append('<a href="'+ item.link +'">'+ item.value +'</a>')
            .appendTo($('#faq-search-results > ul'));
    };
    
    $(“#常见问题搜索”).autocomplete({'source':questions}{
    对,,
    附件:“#常见问题解答搜索结果。自动完成结果”,
    更改:功能(e、ui){
    },
    关闭:功能(e、ui){
    },
    搜索:功能(e、ui){
    $(“#常见问题解答搜索结果>ul”).empty();
    },
    选择:功能(e、ui){
    分配位置(ui.item.link);
    }
    }).数据(“自动完成”)。\u renderItem=功能(ul,项目){
    返回$(“
  • ”) .data(“item.autocomplete”,item) .append(“”) .appendTo($(“#常见问题搜索结果>ul”); };