Javascript 用于引导typeahead的自定义淘汰处理程序不适用于Firefox 5
我有下一个问题:我正在使用引导和淘汰,我有一个自定义的字体方法:Javascript 用于引导typeahead的自定义淘汰处理程序不适用于Firefox 5,javascript,jquery,knockout.js,bootstrap-typeahead,Javascript,Jquery,Knockout.js,Bootstrap Typeahead,我有下一个问题:我正在使用引导和淘汰,我有一个自定义的字体方法: ko.bindingHandlers.typeahead = { update : function(element, valueAccessor, allBindingsAccessor) { $(element).typeahead({ source : typeaheadSource[$(element).attr('id')] }); var span = $(element.pa
ko.bindingHandlers.typeahead = {
update : function(element, valueAccessor, allBindingsAccessor) {
$(element).typeahead({
source : typeaheadSource[$(element).attr('id')]
});
var span = $(element.parentElement).children("span");
if (span.length > 0) {
span[0].onclick = function() {
var t = typeaheadByElementId[$(element).attr('id')];
if (t.shown == false) {
hideAllTypeaheads();
t.showAll();
} else {
t.hide();
}
};
}
}
};
typeheadSource数组的一部分
var typeaheadSource = [];
...
typeaheadSource['buildingWalls'] = [ 'blah', 'ablah', 'cblah-blah'];
...
以及用于提前输入的html代码:
<div class='control-group'><label class='control-label' for='buildingWalls'>Материал наружных стен</label>
<div class='input-append'>
<input type='text' class='input-xlarge' id='buildingWalls' data-bind='value:buildingWalls, typeahead: true'> <span class="add-on"><i class="icon-chevron-down"></i></span>
</div>
</div>
Маааажжа
它在Firefox18和chrome上正常工作,但在Firefox5上不工作(例如)。关于我想要得到的:点击span后,所有提示都会显示给你
- var span = $(element.parentElement).children("span");
- if (span.length > 0) {
- span[0].onclick = function() {
+ var span = element.nextElementSibling;
+ if (span) {
+ span.onclick = function() {
$(element.parentElement).children(“span”)在Firefox5中返回空数组,所以我用新的数组替换了这3行 你能做一把小提琴吗?