:focus选择器用于设置一般意义上具有焦点的元素的样式。但是,考虑到鼠标按下或触摸等情况,它到底是什么时候应用的呢?作为一个web开发人员,我如何才能控制它的一致性?
例如,在Stack Overflow上,如果我在其中一个链接上按下鼠标,但没有激活,在松开鼠标之前将鼠标移开,该链接将获得键盘焦点(如按Tab键所示,焦点转到下一个链接)。然而,即使它有焦点,它也不能获得:focus样式。但是,如果我用Tab键点击一个链接,我会得到:focus大纲样式。
但是在我正在工作的一个网站上,鼠标一按,我马上就会看到:focus风格,所以肯定有一些微妙的细节。
在这段代码中,Chrome for me
我想在页面上实现一些可拖动的元素,这些元素不应该破坏页面上当前的焦点控件。这就是我试过的:
$('input').focus();
$('div').on('mousedown', function(event) {
// event.preventDefault(); // drag does not work anymore
// $('input').focus(); // focus still lost
});
div {
display: inline-block;
border: 1px soli
是否有可能阻止div中的鼠标按下来偷取焦点,但允许在此容器中选择文本(例如<div>)?
/*// Version #1: Focus kept, but text is not selectable
$('div').on('mousedown', function(event) {
event.preventDefault();
});
/**/
// Version #2: Focus kept, text selectable, but focus is missing for a short time (flickering wh
我有一个angular.js应用程序,它应该在执行某些事情时将焦点设置为特定的元素(即,将焦点设置为无效的表单字段,以让用户更正错误)。
我试图在角e2e测试中测试这种行为:
it('should set the focus to the invalid field', function() {
input('email').enter('foo'); // this is not a valid email address
element(/* submit button */).click(); // try to submit th
我知道如果用鼠标选择日期,jquery ui datepicker就会失去焦点。我希望能够将焦点放在输入字段上。所以我做了这样的事情
$("#patientDob").live("click", function() {
$("#patientDob").datepicker({
onSelect: function() {
this.focus();
// selecting a date moves the page, so
我有一个简单的Python + Tkinter应用程序,它显示了一个包含10项的列表:
import Tkinter, ttk
list = ttk.Treeview( Tkinter.Tk() )
list.pack( fill = Tkinter.BOTH, expand = 1 )
items = [ list.insert( '', 'end', text = str( i ) ) for i in range( 10 ) ]
list.selection_set( items[ 0 ] )
list.focus_set() # This is not