我想在用户操作的特定.focus();
上设置<div>
。此操作将重新加载页面,重新加载后我想设置焦点<div>
。
注意: 我可以添加HTML,但想到屏幕截图会更容易。
我试过以下但没有一个有效:
//option - 1
$(".cart-panel .pickup-delivery-time .cart-msg").focus();
//option - 2
$(".pickup-delivery-time .later").find(".cart-msg").focus();
//option - 3
window.location.hash = '.cart-msg';
完整代码:
$(document).on("click", "#map-delivery-addresses button", function() {
$.publish('delivery_address_selected', { address: this });
if (!$(".cart-msg").is(":focus")) {
$(".cart-panel .pickup-delivery-time .cart-msg").focus();
}
});
我在这里缺少什么?
答案 0 :(得分:0)
jQuery focus
与Javascript focus
不同。前者发射一个事件,但后者将该元素置于焦点。
document.getElementById('second').focus()
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>JS Bin</title>
</head>
<body>
<input id="first" placeholder="First"></input>
<input id="second" placeholder="Second"></input>
<input id="third" placeholder="Third"></input>
</body>
</html>
此代码适用于输入,但是一旦div
聚焦,您期望的行为是什么?它可能无法察觉。
答案 1 :(得分:0)
您想要先等待文档准备就绪:
$(document).ready(function()
{
jQuery("div#name").focus();
});
它不会100%有效,但99.9%可能已经足够好了。有些事情会发生,会引起人们的注意力,而你却无能为力。
如果您有复杂的用户界面,则希望更好地将focus()
调用集成到该环境中。