【发布时间】:2018-02-05 04:59:45
【问题描述】:
我正在测试Twitters typehead.js(使用 Bloodhound)作为 jQuery 自动完成的替代方案。
自定义模板
自定义模板可让您完全控制建议的获取方式 渲染使自定义外观和感觉变得容易 提前输入。
所以我用这个:
$('#autocomplete-pm').typeahead(null, {
name: 'Resources',
display: 'value',
source: resourcesData,
templates: {
empty: [
'<div class="empty-message">',
'Ingen resurser funnet',
'</div>'
].join('\n'),
suggestion: Handlebars.compile('<div data-resource_id="{{resource_id}}"><strong>{{first_name}}</strong> – {{last_name}}</div>')
}
});
所以我可以完全控制输出列表,但问题是它将整个输入包装在 <span> 标签中:
<span class="twitter-typeahead" style="position: relative; display: inline-block;">
有没有办法防止这种情况发生,所以它遵循我的 sass 样式?
【问题讨论】:
-
快速查看 github 上的源代码,看起来他们在您无法自定义的地方添加了内联 css :(
-
我以为我们在样式方面已经过了这种“插入”形式:(也不知道在哪里修改源文件。
-
检查
buildCss函数在这里例如:github.com/twitter/typeahead.js/blob/master/src/typeahead/… -
啊,天才。我可以处理这个。谢谢:)
-
请注意,这不是影响内联 css 的唯一地方...