Class CQ.Ext.EventObject
| Package: | CQ.Ext |
| Class: | EventObject |
| Extends: | Object |
| Clientlib: | cq.widgets |
Just as
CQ.Ext.Element wraps around a native DOM node, CQ.Ext.EventObject
wraps the browser's native event-object normalizing cross-browser differences,
such as which mouse button is clicked, keys pressed, mechanisms to stop
event-propagation along with a method to prevent default actions from taking place.
For example:
function handleClick(e, t){ // e is not a standard event object, it is a CQ.Ext.EventObject
e.preventDefault();
var target = e.getTarget(); // same as t (the target HTMLElement)
...
}
var myDiv = CQ.Ext.get("myDiv"); // get reference to an CQ.Ext.Element
myDiv.on( // 'on' is shorthand for addListener
"click", // perform an action on click of myDiv
handleClick // reference to the action handler
);
// other methods to do the same:
CQ.Ext.EventManager.on("myDiv", 'click', handleClick);
CQ.Ext.EventManager.addListener("myDiv", 'click', handleClick);
This class is a singleton and cannot be created directly.
Public Properties
This class has no public properties.
Public Methods
| |
getCharCode() : Number
Gets the character code for the event.
Gets the character code for the event.
|
EventObject |
| |
getKey() : Number
Returns a normalized keyCode for the event.
Returns a normalized keyCode for the event.
|
EventObject |
| |
getPageX() : Number
Gets the x coordinate of the event.
Gets the x coordinate of the event.
|
EventObject |
| |
getPageY() : Number
Gets the y coordinate of the event.
Gets the y coordinate of the event.
|
EventObject |
| |
getRelatedTarget() : HTMLElement
|
EventObject |
| |
getTarget( [String selector], [Number/Mixed maxDepth], [Boolean returnEl] ) : HTMLelement
Gets the target for the event.
Gets the target for the event.
Parameters:
selector : String(optional) A simple selector to filter the target or look for an ancestor of the target maxDepth : Number/Mixed(optional) The max depth to
search as a number or element (defaults to 10 || document.body) returnEl : Boolean(optional) True to return a CQ.Ext.Element object instead of DOM node
Returns:
|
EventObject |
| |
getWheelDelta() : Number
Normalizes mouse wheel delta across browsers
Normalizes mouse wheel delta across browsers
|
EventObject |
| |
getXY() : Array
Gets the page coordinates of the event.
Gets the page coordinates of the event.
|
EventObject |
| |
preventDefault() : void
Prevents the browsers default handling of the event.
Prevents the browsers default handling of the event.
|
EventObject |
| |
stopEvent() : void
Stop the event (preventDefault and stopPropagation)
Stop the event (preventDefault and stopPropagation)
|
EventObject |
| |
stopPropagation() : void
Cancels bubbling of the event.
Cancels bubbling of the event.
|
EventObject |
| |
within( Mixed el, [Boolean related], Boolean allowEl ) : Boolean
Returns true if the target of this event is a child of el. Unless the allowEl parameter is set, it will return false...
Returns true if the target of this event is a child of el. Unless the allowEl parameter is set, it will return false if if the target is el.
Example usage: // Handle click on any child of an element
CQ.Ext.getBody().on('click', function(e){
if(e.within('some-el')){
alert('Clicked on a child of some-el!');
}
});
// Handle click directly on an element, ignoring clicks on child nodes
CQ.Ext.getBody().on('click', function(e,t){
if((t.id == 'some-el') && !e.within(t, true)){
alert('Clicked directly on some-el!');
}
});
Parameters:
el : MixedThe id, DOM element or CQ.Ext.Element to check related : Boolean(optional) true to test if the related target is within el instead of the target allowEl : Boolean{optional} true to also check if the passed element is the target or related target
Returns:
|
EventObject |
Public Events
This class has no public events.