我有一个 HTML 表单上的简单列表框和这个非常基本的 jQuery 代码
//Toggle visibility of selected item
$("#selCategory").change(function() {
$(".prashQs").addClass("hide");
var cat = $("#selCategory :selected").attr("id");
cat = cat.substr(1);
$("#d" + cat).removeClass("hide");
});
当使用鼠标选择当前项目时,更改事件会正常触发,但是当我使用键盘滚动项目时,不会触发该事件,并且我的代码永远不会执行。
这种行为有原因吗?解决方法是什么?
The onchange
在元素失去焦点之前,通常不会触发事件。您还想使用onkeypress
。也许是这样的:
var changeHandler = function() {
$(".prashQs").addClass("hide");
var cat = $("#selCategory :selected").attr("id");
cat = cat.substr(1);
$("#d" + cat).removeClass("hide");
}
$("#selCategory").change(changeHandler).keypress(changeHandler);
你会想要两者onchange
and onkeypress
分别考虑鼠标和键盘交互。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)