我正在尝试一个简单的网站功能,其中包含一些选项。我想仅允许使用键盘编号进行选择,但在系统中我尝试使用此功能(Internet Explorer Mobile)我无法在没有至少单击选项的情况下执行此操作。
代码如下:
<body>
Press a key to select an option
<select id="choose" size="7">
<option value="1">Volvo</option>
<option value="2">Saab</option>
<option value="3">Opel</option>
<option value="4">Audi</option>
<option value="5">Citroen</option>
</select>
<script type="text/javascript">
$(document).ready(function() {
$("#choose").prop("selectedIndex", 3);
$(document).keydown(function(e) {
if (e.which > 48 && e.which < 54) {
$("#choose").val(e.which - 49);
}if (e.keyCode > 48 && e.keyCode < 54) {
$("#choose").val(e.keyCode - 49);
}
});
});
</script>
</body>
它可以在Chrome上运行,但我注意到页面在所选选项上加载了一个奇怪的灰色背景
而不是正常的蓝色,点击后显示为
不幸的是,Internet Explorer Mobile似乎无法识别灰色选项背景,而在点击它之后(从而将背景从灰色变为蓝色)键盘选择&#34;效果很好。
如果页面加载,如何首先将选项背景设为蓝色?
答案 0 :(得分:3)
使用.focus()
:
$("#choose").prop("selectedIndex", 3).focus();
或简单地设置值如:
$("#choose").val(3).focus();