Javascript 选定AngularJs引导集下拉列表项
我编写了这个自定义指令来截获关键事件。使用按下的键,我检查下拉列表中是否有具有相同首字母字符的项目。到这里都很好 接下来,我想把重点放在这个项目上,但它似乎不起作用 代码如下: 如果第一个字母与菜单中的一个字母匹配,只需输入此代码即可 将css类设置为active,在其他情况下删除active 如果第一个字母与菜单中的一个字母匹配,只需输入此代码即可Javascript 选定AngularJs引导集下拉列表项,javascript,angularjs,Javascript,Angularjs,我编写了这个自定义指令来截获关键事件。使用按下的键,我检查下拉列表中是否有具有相同首字母字符的项目。到这里都很好 接下来,我想把重点放在这个项目上,但它似乎不起作用 代码如下: 如果第一个字母与菜单中的一个字母匹配,只需输入此代码即可 将css类设置为active,在其他情况下删除active 如果第一个字母与菜单中的一个字母匹配,只需输入此代码即可 将css类设置为active,在其他情况下删除active。没有附加任何解释的代码块通常对任何未来的读者都没有帮助。试着解释一下你在做什么。亲爱的
将css类设置为active,在其他情况下删除active。没有附加任何解释的代码块通常对任何未来的读者都没有帮助。试着解释一下你在做什么。亲爱的@Daedalus,你可以阅读这个问题,它是一个代码链接,如果你阅读代码,你会发现我回答的语句我已经阅读了这个问题;然而,我的观点是,这里不赞成只使用代码的答案,没有代码以外的任何信息。没有任何解释的代码块通常对未来的读者没有帮助。试着解释一下你在做什么。亲爱的@Daedalus,你可以阅读这个问题,它是一个代码链接,如果你阅读代码,你会发现我回答的语句我已经阅读了这个问题;然而,我的观点是,这里不赞成只使用代码而不使用代码以外的任何信息的答案。
myApp.directive('keypressEvents',
function ($document, $rootScope) {
return {
restrict: 'A',
link: function (scope, element, attr) {
console.log('linked');
$document.bind('keypress', function (e) {
var letter = String.fromCharCode(e.which);
var target = e.target;
var charat = element[0].textContent.charAt(13);
if(element[0].tabIndex === undefined)
alert('undefined1');
if(element.tabIndex === undefined)
alert('undefined2');
if(element.focus === undefined)
alert('undefined3');
if(element[0].focus === undefined)
alert('undefined4');
if(charat === letter){
alert(letter);
element[0].focus(); ////<<---- this dose not works
}
});
}
};
});
<ul class="dropdown-menu" role="menu" >
<li ng-repeat="v in values" keypress-events >
<a href="#">{{v.name}}</a>
</li>
</ul>
if(charat === letter){
element.addClass("active");
}
else{
element.removeClass("active");
}