我需要知道我的输入框是否被点击,以便我可以触发脚本来做某事,除了我尝试的所有路线似乎都没有做任何事情。基本输入框<input type="text" id="search-stuff" placeholder="search"/>Javascriptvar inputBox = document.getElementById("search-stuff");if (inputBox) { inputBox.addEventListener('keyup',function () { startSearch(); }) inputBox.addEventListener('onfocus',function() { console.log('we clicked'); searchBoxClicked(); })}function searchBoxClicked() { console.log('we clicked it'); }我需要知道用户是否点击,以便我可以在用户输入内容之前清除先前元素上的一些类。
2 回答
三国纷争
TA贡献1804条经验 获得超7个赞
你几乎猜对了。几个小错误:
收听
focus
事件。onfocus
不是事件。该
keyup
事件用于在释放键盘按钮时(在keydown
事件之后)进行侦听。如果要监听鼠标单击,请使用该click
事件。
var inputBox = document.getElementById("search-stuff");
if (inputBox) {
inputBox.addEventListener('click', function() {
startSearch();
});
inputBox.addEventListener('focus', function() {
searchBoxClicked();
});
}
function searchBoxClicked() {
console.log('focus');
}
function startSearch() {
console.log('click');
}
<input type="text" id="search-stuff" placeholder="search" />
添加回答
举报
0/150
提交
取消