0

onFocus 事件在页面加载时不断触发,并且在元素进入焦点时似乎不起作用。我只希望在输入成为焦点而不是页面加载时触发警报

//Input
var input = document.getElementById('phonenumber');
//onfocus execute function
input.onFocus = alert('test')
4

1 回答 1

2

您正在调用该函数alert并将其返回值 ( undefined) 分配给焦点处理程序。试试这个:

input.onfocus = function() { alert('test'); };

或者,也许更容易理解:

function inputFocused() {
    alert('test');
}
input.onfocus = inputFocused;

请注意,作业后面没有括号inputFocused。我们要设置onfocus函数本身,而不是调用函数的结果。

于 2012-04-07T05:36:51.383 回答