要求
我想在用户名和密码字段的drowdown菜单中放入一个登录表单,我能够做到这一点。一切顺利,除了以下问题,
问题
在输入时我无法使用 firefox 中的箭头键(向上/向下),当输入在drowdown代码之外时,这很有效。这适用于谷歌crome等其他浏览器。
问题:
如何解决这个问题,jquery或twiter的js是否存在问题,因为当我将输入移到下拉列表外时效果很好
小提琴
这里是复制相同的小提琴::: http://jsfiddle.net/santoshjoshi/WKU6M/3/
代码:
<div id="navbar-example" class="navbar navbar-static">
<div class="container" style="width: auto;">
<div class="nav-collapse bs-js-navbar-collapse">
<ul class="nav navbar-nav pull-left">
<li id="sign-up-dropdown" class="dropdown closed noshow">
<a href="#" id="drop4" role="button" class="dropdown-toggle" data-toggle="dropdown">Sign Up<b class="caret"> </b></a>
<ul class="dropdown-menu" role="menu" aria-labelledby="drop3">
<li role="presentation">
<div class="login_dropdown platform-font-1">
<form class="form-horizontal" action="login" method="POST">
<div class="form-group">
<div class="col-lg-10">
<input type="text" class="form-control " id="email" name="email" placeholder="Email"> </input>
</div>
</div>
</form>
</div>
</li>
</ul>
</li>
</ul>
</div>
</div>
</div>
<!-- Arrow keys works with the below input but not the one inside drop down -->
<input type="text" class="form-control " id="email1" name="email" placeholder="Email"> </input>
答案 0 :(得分:4)
对我来说看起来像是一种错误,但作为一个简单的修复,停止传播onkeydown
事件:
$('#email').on('keydown',function(e){
e.stopPropagation();
});