In an arbitrary javascript function, wish to determine the upstream event.
The event listener function did not pass the event do the current function. afaik, window.event
is not WC3 and not available.
function listener(e) { subfunc(e.target); } function subfunc( element) { // here I wish to know which if any event responsible for me being called var event = ?; switch( event.type ) { ... } }
How does function subfunc()
determine the current event?
(Apologize if question asked before - seems it must have been - but cannot track it down.)
You can do:
function listener(e) { subfunc.call(this, e); }
function subfunc( e ) {
var element = this; //<- 'this' points to your element, 'e.type' is event type
switch( e.type ) { ... }
}
Also other way:
function listener(e) { subfunc.call(e, e.target); }
function subfunc( element ) {
var event = this; //<- 'this' points to your event object
switch( event.type ) { ... }
}
That's not possible. There's only one property which can be accessed through another, reliable way: event.target
= this
(Provided that the function is called from within the scope of the event listener).
The event object should be passed to subfunc
.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With