Class: FederatedMouseEvent
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:46
A specialized event class for mouse interactions in PixiJS applications. Extends FederatedEvent to provide mouse-specific properties and methods while maintaining compatibility with the DOM MouseEvent interface.
Key features:
- Tracks mouse button states
- Provides modifier key states
- Supports coordinate systems (client, screen, global)
- Enables precise position tracking
Example
// Basic mouse event handling
sprite.on('mousemove', (event: FederatedMouseEvent) => {
// Get coordinates in different spaces
console.log('Global position:', event.global.x, event.global.y);
console.log('Client position:', event.client.x, event.client.y);
console.log('Screen position:', event.screen.x, event.screen.y);
// Check button and modifier states
if (event.buttons === 1 && event.ctrlKey) {
console.log('Left click + Control key');
}
// Get local coordinates relative to any container
const localPos = event.getLocalPosition(container);
console.log('Local position:', localPos.x, localPos.y);
});
// Handle mouse button states
sprite.on('mousedown', (event: FederatedMouseEvent) => {
console.log('Mouse button:', event.button); // 0=left, 1=middle, 2=right
console.log('Active buttons:', event.buttons);
});
See
- FederatedEvent For base event functionality
- https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent DOM MouseEvent Interface
Standard
Extends
FederatedEvent<MouseEvent|PointerEvent|PixiTouch>
Extended by
Implements
MouseEvent
Constructors
Constructor
> new FederatedMouseEvent(manager): FederatedMouseEvent
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:181
Parameters
manager
The event boundary which manages this event. Propagation can only occur within the boundary's jurisdiction.
Returns
FederatedMouseEvent
Inherited from
Properties
altKey
> altKey: boolean
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:48
Whether the "alt" key was pressed when this mouse event occurred.
Implementation of
MouseEvent.altKey
AT_TARGET
> readonly AT_TARGET: 2 = 2
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:291
The event propagation phase AT_TARGET that indicates that the event is at the target.
Default
2
Advanced
Implementation of
MouseEvent.AT_TARGET
Inherited from
bubbles
> bubbles: boolean
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:107
Flags whether this event bubbles. This will take effect only if it is set before propagation.
Implementation of
MouseEvent.bubbles
Inherited from
BUBBLING_PHASE
> readonly BUBBLING_PHASE: 3 = 3
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:297
The event propagation phase BUBBLING_PHASE that indicates that the event is in the bubbling phase.
Default
3
Advanced
Implementation of
MouseEvent.BUBBLING_PHASE
Inherited from
button
> button: number
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:50
The specific button that was pressed in this mouse event.
Implementation of
MouseEvent.button
buttons
> buttons: number
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:52
The button depressed when this event occurred.
Implementation of
MouseEvent.buttons
cancelable
> readonly cancelable: false = false
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:114
Flags whether this event can be canceled using FederatedEvent.preventDefault. This is always false (for now).
Implementation of
MouseEvent.cancelable
Inherited from
~~cancelBubble~~
> cancelBubble: boolean
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:109
Deprecated
since 7.0.0
Implementation of
MouseEvent.cancelBubble
Inherited from
CAPTURING_PHASE
> readonly CAPTURING_PHASE: 1 = 1
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:285
The event propagation phase CAPTURING_PHASE that indicates that the event is in the capturing phase.
Default
1
Advanced
Implementation of
MouseEvent.CAPTURING_PHASE
Inherited from
FederatedEvent.CAPTURING_PHASE
client
> client: Point
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:62
The coordinates of the mouse event relative to the canvas.
ctrlKey
> ctrlKey: boolean
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:54
Whether the "control" key was pressed when this mouse event occurred.
Implementation of
MouseEvent.ctrlKey
currentTarget
> currentTarget: Container
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:123
The listeners of the event target that are being notified.
Implementation of
MouseEvent.currentTarget
Inherited from
defaultPrevented
> defaultPrevented: boolean
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:125
Flags whether the default response of the user agent was prevent through this event.
Implementation of
MouseEvent.defaultPrevented
Inherited from
FederatedEvent.defaultPrevented
detail
> detail: number
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:78
This is the number of clicks that occurs in 200ms/click of each other.
Implementation of
MouseEvent.detail
Overrides
eventPhase
> eventPhase: number
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:130
The propagation phase.
Default
Implementation of
MouseEvent.eventPhase
Inherited from
global
> global: Point
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:92
The pointer coordinates in world space.
isTrusted
> isTrusted: boolean
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:132
Flags whether this is a user-trusted event
Implementation of
MouseEvent.isTrusted
Inherited from
layer
> layer: Point
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:166
The coordinates of the event relative to the nearest DOM layer. This is a non-standard property.
Inherited from
manager
> readonly manager: EventBoundary
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:154
The EventBoundary that manages this event. Null for root events.
Inherited from
metaKey
> metaKey: boolean
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:56
Whether the "meta" key was pressed when this mouse event occurred.
Implementation of
MouseEvent.metaKey
movement
> movement: Point
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:80
The movement in this pointer relative to the last mousemove event.
nativeEvent
> nativeEvent: MouseEvent | PointerEvent | PixiTouch
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:144
The native event that caused the foremost original event.
Inherited from
NONE
> readonly NONE: 0 = 0
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:279
The event propagation phase NONE that indicates that the event is not in any phase.
Default
0
Advanced
Implementation of
MouseEvent.NONE
Inherited from
offset
> offset: Point
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:86
The offset of the pointer coordinates w.r.t. target Container in world space. This is not supported at the moment.
originalEvent
> originalEvent: FederatedEvent<MouseEvent | PointerEvent | PixiTouch>
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:146
The original event that caused this event, if any.
Inherited from
page
> page: Point
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:172
The coordinates of the event relative to the DOM document. This is a non-standard property.
Inherited from
path
> path: Container<ContainerChild>[]
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:152
The composed path of the event's propagation. The target is at the end.
Inherited from
propagationImmediatelyStopped
> propagationImmediatelyStopped: boolean
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:150
Flags whether propagation was immediately stopped.
Inherited from
FederatedEvent.propagationImmediatelyStopped
propagationStopped
> propagationStopped: boolean
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:148
Flags whether propagation was stopped.
Inherited from
FederatedEvent.propagationStopped
relatedTarget
> relatedTarget: EventTarget
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:58
This is currently not implemented in the Federated Events API.
Implementation of
MouseEvent.relatedTarget
~~returnValue~~
> returnValue: boolean
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:134
Deprecated
since 7.0.0
Implementation of
MouseEvent.returnValue
Inherited from
screen
> screen: Point
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:101
The pointer coordinates in the renderer's screen. This has slightly different semantics than native PointerEvent screenX/screenY.
shiftKey
> shiftKey: boolean
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:60
Whether the "shift" key was pressed when this mouse event occurred.
Implementation of
MouseEvent.shiftKey
~~srcElement~~
> srcElement: EventTarget
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:136
Deprecated
since 7.0.0
Implementation of
MouseEvent.srcElement
Inherited from
target
> target: Container
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:138
The event target that this will be dispatched to.
Implementation of
MouseEvent.target
Inherited from
timeStamp
> timeStamp: number
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:140
The timestamp of when the event was created.
Implementation of
MouseEvent.timeStamp
Inherited from
type
> type: string
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:142
The type of event, e.g. "mouseup".
Implementation of
MouseEvent.type
Inherited from
view
> view: Window
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:158
The global Window object.
Implementation of
MouseEvent.view
Inherited from
Accessors
clientX
Get Signature
> get clientX(): number
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:64
Returns
number
Implementation of
MouseEvent.clientX
clientY
Get Signature
> get clientY(): number
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:66
Returns
number
Implementation of
MouseEvent.clientY
data
Get Signature
> get data(): this
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:186
Fallback for the deprecated InteractionEvent.data.
Deprecated
since 7.0.0
Returns
this
Inherited from
globalX
Get Signature
> get globalX(): number
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:94
Returns
number
globalY
Get Signature
> get globalY(): number
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:96
Returns
number
layerX
Get Signature
> get layerX(): number
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:168
Returns
number
Implementation of
MouseEvent.layerX
Inherited from
layerY
Get Signature
> get layerY(): number
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:170
Returns
number
Implementation of
MouseEvent.layerY
Inherited from
movementX
Get Signature
> get movementX(): number
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:82
Returns
number
Implementation of
MouseEvent.movementX
movementY
Get Signature
> get movementY(): number
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:84
Returns
number
Implementation of
MouseEvent.movementY
offsetX
Get Signature
> get offsetX(): number
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:88
Returns
number
Implementation of
MouseEvent.offsetX
offsetY
Get Signature
> get offsetY(): number
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:90
Returns
number
Implementation of
MouseEvent.offsetY
pageX
Get Signature
> get pageX(): number
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:174
Returns
number
Implementation of
MouseEvent.pageX
Inherited from
pageY
Get Signature
> get pageY(): number
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:176
Returns
number
Implementation of
MouseEvent.pageY
Inherited from
screenX
Get Signature
> get screenX(): number
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:106
The pointer coordinates in the renderer's screen. Alias for screen.x.
Returns
number
Implementation of
MouseEvent.screenX
screenY
Get Signature
> get screenY(): number
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:111
The pointer coordinates in the renderer's screen. Alias for screen.y.
Returns
number
Implementation of
MouseEvent.screenY
x
Get Signature
> get x(): number
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:71
Alias for this.clientX.
Returns
number
Implementation of
MouseEvent.x
y
Get Signature
> get y(): number
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:76
Alias for this.clientY.
Returns
number
Implementation of
MouseEvent.y
Methods
composedPath()
> composedPath(): Container<ContainerChild>[]
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:191
The propagation path for this event. Alias for EventBoundary.propagationPath.
Returns
Advanced
Implementation of
MouseEvent.composedPath
Inherited from
getLocalPosition()
> getLocalPosition<P>(container, point?, globalPos?): P
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:140
Converts global coordinates into container-local coordinates.
This method transforms coordinates from world space to a container's local space, useful for precise positioning and hit testing.
Type Parameters
P
Parameters
container
The Container to get local coordinates for
point?
P
Optional Point object to store the result. If not provided, a new Point will be created
globalPos?
Optional custom global coordinates. If not provided, the event's global position is used
Returns
P
The local coordinates as a Point object
Example
// Basic usage - get local coordinates relative to a container
sprite.on('pointermove', (event: FederatedMouseEvent) => {
// Get position relative to the sprite
const localPos = event.getLocalPosition(sprite);
console.log('Local position:', localPos.x, localPos.y);
});
// Using custom global coordinates
const customGlobal = new Point(100, 100);
sprite.on('pointermove', (event: FederatedMouseEvent) => {
// Transform custom coordinates
const localPos = event.getLocalPosition(sprite, undefined, customGlobal);
console.log('Custom local position:', localPos.x, localPos.y);
});
See
- Container.worldTransform For the transformation matrix
- Point For the point class used to store coordinates
getModifierState()
> getModifierState(key): boolean
Defined in: node_modules/pixi.js/lib/events/FederatedMouseEvent.d.ts:145
Whether the modifier key was pressed when this event natively occurred.
Parameters
key
string
The modifier key.
Returns
boolean
Implementation of
MouseEvent.getModifierState
preventDefault()
> preventDefault(): void
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:229
Prevent default behavior of both PixiJS and the user agent.
Returns
void
Example
sprite.on('click', (event) => {
// Prevent both browser's default click behavior
// and PixiJS's default handling
event.preventDefault();
// Custom handling
customClickHandler();
});
Remarks
- Only works if the native event is cancelable
- Does not stop event propagation
Implementation of
MouseEvent.preventDefault
Inherited from
stopImmediatePropagation()
> stopImmediatePropagation(): void
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:249
Stop this event from propagating to any additional listeners, including those on the current target and any following targets in the propagation path.
Returns
void
Example
container.on('pointerdown', (event) => {
// Stop all further event handling
event.stopImmediatePropagation();
// These handlers won't be called:
// - Other pointerdown listeners on this container
// - Any pointerdown listeners on parent containers
});
Remarks
- Immediately stops all event propagation
- Prevents other listeners on same target from being called
- More aggressive than stopPropagation()
Implementation of
MouseEvent.stopImmediatePropagation
Inherited from
FederatedEvent.stopImmediatePropagation
stopPropagation()
> stopPropagation(): void
Defined in: node_modules/pixi.js/lib/events/FederatedEvent.d.ts:273
Stop this event from propagating to the next target in the propagation path. The rest of the listeners on the current target will still be notified.
Returns
void
Example
child.on('pointermove', (event) => {
// Handle event on child
updateChild();
// Prevent parent handlers from being called
event.stopPropagation();
});
// This won't be called if child handles the event
parent.on('pointermove', (event) => {
updateParent();
});
Remarks
- Stops event bubbling to parent containers
- Does not prevent other listeners on same target
- Less aggressive than stopImmediatePropagation()
Implementation of
MouseEvent.stopPropagation