在页面加载时,我使用以下代码将焦点设置到特定的输入字段:
$('#myInputID').focus();
当鼠标悬停在特定元素上时,是否有一种方法可以撤销或删除此焦点?(离开该元素后,焦点不必重置。)
我无法找到与jQuery相反的功能,或者其他可以在此处起作用的函数。
使用 .blur() 方法。
当元素失去焦点时,会向该元素发送模糊事件(blur event)。最初,此事件仅适用于表单元素,如
<input>
。在较新的浏览器中,该事件的范围已扩展到包括所有元素类型。元素可以通过键盘命令(如Tab键)或在页面上其他地方进行鼠标点击来失去焦点。
$("#myInputID").blur();
$(':text').attr("disabled", "disabled");
将所有文本框设置为禁用模式。
您也可以通过为每个文本框分配ID的方式来实现。这样做会增加代码的重量并存在性能问题。
因此,最好采用$(':text').attr("disabled", "disabled");
方法。
如果您使用了readonly
属性,则模糊本身将无法工作。下面的代码可以解决这个问题。
$('#myInputID').removeAttr('readonly').trigger('blur').attr('readonly','readonly');
对于所有文本框:
$(':text').blur()
$("[id=myInputID]").blur();
。 - Milind Anantwar