mirror of
https://github.com/zhigang1992/DefinitelyTyped.git
synced 2026-04-24 05:06:02 +08:00
Added version number to existing (and now old) hammerjs definition and tests
This commit is contained in:
@@ -1,49 +1,49 @@
|
||||
/// <reference path="../jquery/jquery.d.ts"/>
|
||||
/// <reference path="hammerjs.d.ts" />
|
||||
|
||||
// plugin check
|
||||
if (!Hammer.HAS_TOUCHEVENTS && !Hammer.HAS_POINTEREVENTS) {
|
||||
Hammer.plugins.fakeMultitouch();
|
||||
Hammer.plugins.showTouches();
|
||||
}
|
||||
|
||||
// instance method check
|
||||
var el = document.getElementById("container");
|
||||
|
||||
Hammer(el).on("doubletap", function () {
|
||||
alert('you doubletapped me!');
|
||||
});
|
||||
|
||||
var hammertime = Hammer(el, {
|
||||
drag: false,
|
||||
transform: false
|
||||
}).off("tap", function (event:HammerEvent) {
|
||||
alert('hello!');
|
||||
});
|
||||
|
||||
hammertime.enable(false);
|
||||
|
||||
hammertime.on("touch drag transform", function (ev: HammerEvent) {
|
||||
if (!ev.gesture) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (ev.gesture.deltaX >= 20) {
|
||||
hammertime.trigger("swipe", ev.gesture);
|
||||
}
|
||||
});
|
||||
|
||||
// jQuery check
|
||||
$("#element")
|
||||
.hammer({
|
||||
// Options
|
||||
})
|
||||
.on("tap", function (ev) {
|
||||
console.log(ev);
|
||||
});
|
||||
|
||||
$("#container").hammer({
|
||||
prevent_default: false,
|
||||
drag_block_vertical: false
|
||||
}).on("hold tap doubletap transformstart transform transformend dragstart drag dragend release swipe", function (ev) {
|
||||
/// <reference path="../jquery/jquery.d.ts"/>
|
||||
/// <reference path="hammerjs-1.1.3.d.ts" />
|
||||
|
||||
// plugin check
|
||||
if (!Hammer.HAS_TOUCHEVENTS && !Hammer.HAS_POINTEREVENTS) {
|
||||
Hammer.plugins.fakeMultitouch();
|
||||
Hammer.plugins.showTouches();
|
||||
}
|
||||
|
||||
// instance method check
|
||||
var el = document.getElementById("container");
|
||||
|
||||
Hammer(el).on("doubletap", function () {
|
||||
alert('you doubletapped me!');
|
||||
});
|
||||
|
||||
var hammertime = Hammer(el, {
|
||||
drag: false,
|
||||
transform: false
|
||||
}).off("tap", function (event:HammerEvent) {
|
||||
alert('hello!');
|
||||
});
|
||||
|
||||
hammertime.enable(false);
|
||||
|
||||
hammertime.on("touch drag transform", function (ev: HammerEvent) {
|
||||
if (!ev.gesture) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (ev.gesture.deltaX >= 20) {
|
||||
hammertime.trigger("swipe", ev.gesture);
|
||||
}
|
||||
});
|
||||
|
||||
// jQuery check
|
||||
$("#element")
|
||||
.hammer({
|
||||
// Options
|
||||
})
|
||||
.on("tap", function (ev) {
|
||||
console.log(ev);
|
||||
});
|
||||
|
||||
$("#container").hammer({
|
||||
prevent_default: false,
|
||||
drag_block_vertical: false
|
||||
}).on("hold tap doubletap transformstart transform transformend dragstart drag dragend release swipe", function (ev) {
|
||||
});
|
||||
@@ -1,142 +1,142 @@
|
||||
// Type definitions for Hammer.js 1.1.3
|
||||
// Project: http://eightmedia.github.com/hammer.js/
|
||||
// Definitions by: Boris Yankov <https://github.com/borisyankov/>, Drew Noakes <https://drewnoakes.com>
|
||||
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
||||
|
||||
|
||||
/// <reference path="../jquery/jquery.d.ts"/>
|
||||
|
||||
declare var Hammer: HammerStatic;
|
||||
|
||||
interface HammerStatic {
|
||||
(element: any, options?: HammerOptions): HammerInstance;
|
||||
|
||||
VERSION: number;
|
||||
HAS_POINTEREVENTS: boolean;
|
||||
HAS_TOUCHEVENTS: boolean;
|
||||
UPDATE_VELOCITY_INTERVAL: number;
|
||||
POINTER_MOUSE: HammerPointerType;
|
||||
POINTER_TOUCH: HammerPointerType;
|
||||
POINTER_PEN: HammerPointerType;
|
||||
|
||||
DIRECTION_UP: HammerDirectionType;
|
||||
DIRECTION_DOWN: HammerDirectionType;
|
||||
DIRECTION_LEFT: HammerDirectionType;
|
||||
DIRECTION_RIGH: HammerDirectionType;
|
||||
|
||||
EVENT_START: HammerTouchEventState;
|
||||
EVENT_MOVE: HammerTouchEventState;
|
||||
EVENT_END: HammerTouchEventState;
|
||||
|
||||
plugins: any;
|
||||
gestures: any;
|
||||
READY: boolean;
|
||||
}
|
||||
|
||||
declare class HammerInstance {
|
||||
constructor(element: any, options?: HammerOptions);
|
||||
|
||||
on(gesture: string, handler: (event: HammerEvent) => void): HammerInstance;
|
||||
off(gesture: string, handler: (event: HammerEvent) => void): HammerInstance;
|
||||
enable(toggle: boolean): HammerInstance;
|
||||
|
||||
// You shouldn't normally use this internal method. Only use it when you know what you're doing! You can read the sourcecode for information about how to use this.
|
||||
trigger(gesture: string, eventData: HammerGestureEventData): HammerInstance;
|
||||
}
|
||||
|
||||
// Gesture Options : https://github.com/EightMedia/hammer.js/wiki/Getting-Started#gesture-options
|
||||
interface HammerOptions {
|
||||
behavior?: {
|
||||
contentZooming?: string;
|
||||
tapHighlightColor?: string;
|
||||
touchAction?: string;
|
||||
touchCallout?: string;
|
||||
userDrag?: string;
|
||||
userSelect?: string;
|
||||
};
|
||||
doubleTapDistance?: number;
|
||||
doubleTapInterval?: number;
|
||||
drag?: boolean;
|
||||
dragBlockHorizontal?: boolean;
|
||||
dragBlockVertical?: boolean;
|
||||
dragDistanceCorrection?: boolean;
|
||||
dragLockMinDistance?: number;
|
||||
dragLockToAxis?: boolean;
|
||||
dragMaxTouches?: number;
|
||||
dragMinDistance?: number;
|
||||
gesture?: boolean;
|
||||
hold?: boolean;
|
||||
holdThreshold?: number;
|
||||
holdTimeout?: number;
|
||||
preventDefault?: boolean;
|
||||
preventMouse?: boolean;
|
||||
release?: boolean;
|
||||
showTouches?: boolean;
|
||||
swipe?: boolean;
|
||||
swipeMaxTouches?: number;
|
||||
swipeMinTouches?: number;
|
||||
swipeVelocityX?: number;
|
||||
swipeVelocityY?: number;
|
||||
tap?: boolean;
|
||||
tapAlways?: boolean;
|
||||
tapMaxDistance?: number;
|
||||
tapMaxTime?: number;
|
||||
touch?: boolean;
|
||||
transform?: boolean;
|
||||
transformMinRotation?: number;
|
||||
transformMinScale?: number;
|
||||
}
|
||||
|
||||
interface HammerGestureEventData {
|
||||
timestamp: number;
|
||||
target: HTMLElement;
|
||||
touches: HammerPoint[];
|
||||
pointerType: HammerPointerType;
|
||||
center: HammerPoint;
|
||||
deltaTime: number;
|
||||
deltaX: number;
|
||||
deltaY: number;
|
||||
velocityX: number;
|
||||
velocityY: number;
|
||||
angle: number;
|
||||
interimAngle: number;
|
||||
direction: HammerDirectionType;
|
||||
interimDirection: HammerDirectionType;
|
||||
distance: number;
|
||||
scale: number;
|
||||
rotation: number;
|
||||
eventType: HammerTouchEventState;
|
||||
srcEvent: any;
|
||||
startEvent: any;
|
||||
|
||||
stopPropagation(): void;
|
||||
preventDefault(): void;
|
||||
stopDetect(): void;
|
||||
}
|
||||
|
||||
interface HammerPoint {
|
||||
clientX: number;
|
||||
clientY: number;
|
||||
pageX: number;
|
||||
pageY: number;
|
||||
}
|
||||
|
||||
interface HammerEvent {
|
||||
type: string;
|
||||
gesture: HammerGestureEventData;
|
||||
|
||||
stopPropagation(): void;
|
||||
preventDefault(): void;
|
||||
|
||||
}
|
||||
|
||||
declare enum HammerPointerType {
|
||||
}
|
||||
declare enum HammerDirectionType {
|
||||
}
|
||||
declare enum HammerTouchEventState {
|
||||
}
|
||||
|
||||
interface JQuery {
|
||||
hammer(options?: HammerOptions): JQuery;
|
||||
}
|
||||
// Type definitions for Hammer.js 1.1.3
|
||||
// Project: http://eightmedia.github.com/hammer.js/
|
||||
// Definitions by: Boris Yankov <https://github.com/borisyankov/>, Drew Noakes <https://drewnoakes.com>
|
||||
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
||||
|
||||
|
||||
/// <reference path="../jquery/jquery.d.ts"/>
|
||||
|
||||
declare var Hammer: HammerStatic;
|
||||
|
||||
interface HammerStatic {
|
||||
(element: any, options?: HammerOptions): HammerInstance;
|
||||
|
||||
VERSION: number;
|
||||
HAS_POINTEREVENTS: boolean;
|
||||
HAS_TOUCHEVENTS: boolean;
|
||||
UPDATE_VELOCITY_INTERVAL: number;
|
||||
POINTER_MOUSE: HammerPointerType;
|
||||
POINTER_TOUCH: HammerPointerType;
|
||||
POINTER_PEN: HammerPointerType;
|
||||
|
||||
DIRECTION_UP: HammerDirectionType;
|
||||
DIRECTION_DOWN: HammerDirectionType;
|
||||
DIRECTION_LEFT: HammerDirectionType;
|
||||
DIRECTION_RIGH: HammerDirectionType;
|
||||
|
||||
EVENT_START: HammerTouchEventState;
|
||||
EVENT_MOVE: HammerTouchEventState;
|
||||
EVENT_END: HammerTouchEventState;
|
||||
|
||||
plugins: any;
|
||||
gestures: any;
|
||||
READY: boolean;
|
||||
}
|
||||
|
||||
declare class HammerInstance {
|
||||
constructor(element: any, options?: HammerOptions);
|
||||
|
||||
on(gesture: string, handler: (event: HammerEvent) => void): HammerInstance;
|
||||
off(gesture: string, handler: (event: HammerEvent) => void): HammerInstance;
|
||||
enable(toggle: boolean): HammerInstance;
|
||||
|
||||
// You shouldn't normally use this internal method. Only use it when you know what you're doing! You can read the sourcecode for information about how to use this.
|
||||
trigger(gesture: string, eventData: HammerGestureEventData): HammerInstance;
|
||||
}
|
||||
|
||||
// Gesture Options : https://github.com/EightMedia/hammer.js/wiki/Getting-Started#gesture-options
|
||||
interface HammerOptions {
|
||||
behavior?: {
|
||||
contentZooming?: string;
|
||||
tapHighlightColor?: string;
|
||||
touchAction?: string;
|
||||
touchCallout?: string;
|
||||
userDrag?: string;
|
||||
userSelect?: string;
|
||||
};
|
||||
doubleTapDistance?: number;
|
||||
doubleTapInterval?: number;
|
||||
drag?: boolean;
|
||||
dragBlockHorizontal?: boolean;
|
||||
dragBlockVertical?: boolean;
|
||||
dragDistanceCorrection?: boolean;
|
||||
dragLockMinDistance?: number;
|
||||
dragLockToAxis?: boolean;
|
||||
dragMaxTouches?: number;
|
||||
dragMinDistance?: number;
|
||||
gesture?: boolean;
|
||||
hold?: boolean;
|
||||
holdThreshold?: number;
|
||||
holdTimeout?: number;
|
||||
preventDefault?: boolean;
|
||||
preventMouse?: boolean;
|
||||
release?: boolean;
|
||||
showTouches?: boolean;
|
||||
swipe?: boolean;
|
||||
swipeMaxTouches?: number;
|
||||
swipeMinTouches?: number;
|
||||
swipeVelocityX?: number;
|
||||
swipeVelocityY?: number;
|
||||
tap?: boolean;
|
||||
tapAlways?: boolean;
|
||||
tapMaxDistance?: number;
|
||||
tapMaxTime?: number;
|
||||
touch?: boolean;
|
||||
transform?: boolean;
|
||||
transformMinRotation?: number;
|
||||
transformMinScale?: number;
|
||||
}
|
||||
|
||||
interface HammerGestureEventData {
|
||||
timestamp: number;
|
||||
target: HTMLElement;
|
||||
touches: HammerPoint[];
|
||||
pointerType: HammerPointerType;
|
||||
center: HammerPoint;
|
||||
deltaTime: number;
|
||||
deltaX: number;
|
||||
deltaY: number;
|
||||
velocityX: number;
|
||||
velocityY: number;
|
||||
angle: number;
|
||||
interimAngle: number;
|
||||
direction: HammerDirectionType;
|
||||
interimDirection: HammerDirectionType;
|
||||
distance: number;
|
||||
scale: number;
|
||||
rotation: number;
|
||||
eventType: HammerTouchEventState;
|
||||
srcEvent: any;
|
||||
startEvent: any;
|
||||
|
||||
stopPropagation(): void;
|
||||
preventDefault(): void;
|
||||
stopDetect(): void;
|
||||
}
|
||||
|
||||
interface HammerPoint {
|
||||
clientX: number;
|
||||
clientY: number;
|
||||
pageX: number;
|
||||
pageY: number;
|
||||
}
|
||||
|
||||
interface HammerEvent {
|
||||
type: string;
|
||||
gesture: HammerGestureEventData;
|
||||
|
||||
stopPropagation(): void;
|
||||
preventDefault(): void;
|
||||
|
||||
}
|
||||
|
||||
declare enum HammerPointerType {
|
||||
}
|
||||
declare enum HammerDirectionType {
|
||||
}
|
||||
declare enum HammerTouchEventState {
|
||||
}
|
||||
|
||||
interface JQuery {
|
||||
hammer(options?: HammerOptions): JQuery;
|
||||
}
|
||||
Reference in New Issue
Block a user