我有一系列的按钮和其他控件。当用户按下Shift和*时,我想要移动到下一个控件(按钮,文本或任何其他控件)。我怎样才能以最短的方式做到这一点。移至下一个按钮
Q
移至下一个按钮
0
A
回答
0
这是一个俗套的解决方案,但在这里。
一些解释,这是什么试图做。我想在这里更正,所以请开火。
获取类“nav”的所有元素。这些是我们想要改变焦点的元素。
从这个集合中,找到以前聚焦的元素及其索引。不幸的是,Internet Explorer和FireFox没有提供确定哪个元素的焦点的方法或不同。我在这里用自定义的“isFocused”属性作弊。
如果没有以前的焦点元素,请将该集合中的第一个元素设置为焦点并将isFocused属性添加到该元素。
如果存在以前关注的元素,请从其中移除isFocused属性并在其后查找下一个“nav”元素。这段代码支持从集合开始处重新开始,所以如果你使用这种技术将最后一个元素聚焦并按下Shift +“*”,则第一个元素将被聚焦。
这种方法存在问题。它狭隘,忽视用户手动集中的元素。它还为HTML元素分配一个点击处理程序来捕获所有活动。这可能不是处理这种需求的最高性能方式。
$(document).ready
(
function()
{
$("html").keydown
(
function(e)
{
if(e.shiftKey && e.keyCode == 42)
{
var wrappedElemSet = $(".nav");
var focusedElementIndex = -1;
var focusedElement;
var elems = wrappedElemSet
.each
(
function(i)
{
if($(this).attr("isFocused"))
{
focusedElementIndex = i;
focusedElement = $(this);
return false;
}
}
)
if(focusedElementIndex == -1)
{
$(wrappedElemSet[0])
.attr("isFocused", "isFocused")
.focus();
}
else
{
var elementIndexToFocus =
focusedElementIndex == wrappedElemSet.size() + 1 ?
0 : focusedElementIndex + 1;
focusedElement.removeAttr("isFocused");
$(wrappedElemSet[elementIndexToFocus])
.attr("isFocused", "isFocused")
.focus();
}
}
}
);
}
);
+0
感谢您的努力 – Hitz 2009-09-16 05:58:00
0
$("#theNextButton").focus();
,并尽量做移+是像这样做的另一个关键:
var isShiftDown = false;
$(document).keyup(function (e) {
if(e.which == 16){
isShiftDown = false;
}
}).keydown(function(event){
var code = event.keyCode;
if(code == 16){ //left
isShiftDown = true;
}
if(code == 37 && isShiftDown){ //left
//instead of traping left key, trap what you need
}
});
你将不得不拿出一个办法把重点放在“下一个”控制自己。它不应该太难。我现在要去玩一些后果。
相关问题
- 1. 将按钮图像从第一个按钮按下移至按下的第二个按钮
- 2. 如何在按下输入按钮时将焦点移至下一个字段
- 3. 如何检索按钮上的数据并移至下一步按钮?
- 4. 从第一个按钮下拉菜单后移动下一个按钮
- 5. 按下一个按钮
- 6. 移至下一个表格在Javascript
- 7. 如何使按钮从第一个JTabbedPanel移动到下一个?
- 8. 启用/禁用上移/下移按钮上一个ListView
- 9. 在按下WPF DataGrid中的Enter键时移至下一列
- 10. 当按Tab键时光标不移动到下一个按钮
- 11. ios触摸从一个按钮移动到另一个按钮
- 12. 将焦点移至下一个单元格上按Enter键WPF DataGrid中按?
- 13. 与“下一个按钮”
- 14. MPMoviePlayerController和下一个按钮
- 15. 下一个按钮....主页
- 16. 有一个按钮减去我按下的下一个按钮的值。 Swift
- 17. 按钮向下移动
- 18. 将按钮向下移动
- 19. 按下按钮,将身体从一个位置移动到另一个位置
- 20. 如何使下一个按钮移动到Jframe中的下一个Jpanel
- 21. 上一个按钮和下一个按钮不工作在jquery
- 22. 带有下一个按钮和上一个按钮的jQuery BBQ
- 23. 在下一个按钮中从一个文本字段移动到另一个按钮点击虚拟键盘
- 24. 使下一个\上一个按钮,JSP
- 25. 上一个/下一个按钮?
- 26. UIScrollView下一个上一个按钮
- 27. 上一个和下一个按钮
- 28. 识别标签按钮被按下以移动到下一个响应者
- 29. 按下TAB按钮时,如何延迟移动到下一个输入栏?
- 30. jQuery Sortable上移/下移按钮
告诉他们使用TAB键吗? – nickf 2009-09-16 03:10:06
:)是的,我建议,但没有太多的事情可以对付固执的人与你一起工作.. – Hitz 2009-09-16 03:16:26