我正在研究一些需要可以获得焦点的标记的JavaScript。我希望能够使用<div />
代码,但<div />
代码无法获得焦点。
看起来可以获得焦点的唯一元素是<input />
标记和<a />
标记。是否有其他方法可以让元素获得不是<input />
或<a />
标记的焦点?
我无法使用<a />
或<input />
代码,因为我需要能够将内容放在代码中,这样这些代码都不会起作用,除非有办法允许嵌套{{} 1}}标签,虽然我对此goes against the standard表示怀疑。我试图找出一种方法来允许<a />
标记(或任何其他容器元素)获得焦点。
答案 0 :(得分:11)
“可以获得焦点”是什么意思?可以设置任何DOM元素以接收大量的javascript事件,包括click
个事件。
或者你的意思是“可以用键盘选项卡”?如果是这样,如果您无法使用a
标记作为容器,请尝试使用元素tabindex
property。我不确定它是如何跨浏览器的,但至少在用javascript自己写一个标签式ui之前先尝试一下。
答案 1 :(得分:0)
书签是要走的路。
使用
开始您的内容<a href="#anchor">
答案 2 :(得分:0)
某种解决方法而且在语义上不正确,但是......
a#foo { display: block; }
a#foo:hover { cursor: default; }
然后使用JavaScript拦截a#foo
上的onClick事件并返回false。