Say I have a click handler defined:$("#foo").click(function(e){});How can I, within the function handler, tell whether the event was fired programmatically, or by the user? 解决方案 You could have a look at the event object e. If the event was triggered by a real click, you'll have things like clientX, clientY, pageX, pageY, etc. inside e and they will be numbers; these numbers are related to the mouse position when the click is triggered but they will probably be present even if the click was initiated through the keyboard. If the event was triggered by $x.click() then you won't have the usual position values in e. You could also look at the originalEvent property, that shouldn't be there if the event came from $x.click().Maybe something like this:$("#foo").click(function(e){ if(e.hasOwnProperty('originalEvent')) // Probably a real click. else // Probably a fake click.});And here's a little sandbox to play with: http://jsfiddle.net/UtzND/ 这篇关于在jQuery中,如何区分程序化点击和用户点击?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持! 1403页,肝出来的..
09-06 19:54