Onkeydown: any key (letters, numbers, systems, tabs, etc.) can be triggered, and the letters are not case sensitive;
Onkeypress: triggered when the letter or number key is pressed, and the letters are case sensitive;
Onkeyup: The corresponding key and onkeydown are the same. The difference is that the order is different.
The corresponding order of the first three is: onkeydown ----> onkeypress -----> onkeyup
Bytes --------------------------------------------------------------------------------------------
Onblur: The mouse loses focus
Onfocus: The mouse gets the focus
Bytes --------------------------------------------------------------------------------------------
Onchange: triggered when the value changes and the mouse loses focus. It is not triggered when the value is changed through JS or select.
Onpropertychange
Oninput: Except for the onpropertychange in IE browser, the difference is that it is not triggered when the value is changed through JS or select.
Bytes -------------------------------------------------------------------------------------------
Mouseover/mouseout: each time you enter this area and move all the elements in this area, it is bound multiple times because of event bubbles.
Mouseenter/mouseleave: the trigger condition is the same as that of Mouseover/mouseout. The difference is that events do not bubble up and therefore do not be bound multiple times. Sadly, these two attributes are only supported by IE and opera.