Skip to content

Commit 9324014

Browse files
committed
changed iScroll to IScroll, removed old events from options and added the .on method
1 parent c94dcde commit 9324014

File tree

3 files changed

+95
-119
lines changed

3 files changed

+95
-119
lines changed

iscroll/iscroll-5-lite.d.ts

Lines changed: 27 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1,48 +1,35 @@
1-
// Type definitions for iScroll Lite 4.1
2-
// Project: http://cubiq.org/iscroll-4
3-
// Definitions by: Boris Yankov <https://github.com/borisyankov/> and Christiaan Rakowski <https://github.com/csrakowski/>
1+
// Type definitions for iScroll Lite 5
2+
// Project: http://cubiq.org/iscroll-5-ready-for-beta-test
3+
// Definitions by: Christiaan Rakowski <https://github.com/csrakowski/>
44
// Definitions: https://github.com/borisyankov/DefinitelyTyped
55

6-
7-
interface iScrollEvent {
8-
(e: Event): void;
9-
}
10-
11-
interface iScrollOptions {
12-
hScroll?: boolean;
13-
vScroll?: boolean;
14-
x?: number;
15-
y?: number;
16-
bounce?: boolean;
17-
bounceLock?: boolean;
18-
momentum?: boolean;
19-
lockDirection?: boolean;
20-
useTransform?: boolean;
21-
useTransition?: boolean;
22-
23-
// Events
24-
onRefresh?: iScrollEvent;
25-
onBeforeScrollStart?: iScrollEvent;
26-
onScrollStart?: iScrollEvent;
27-
onBeforeScrollMove?: iScrollEvent;
28-
onScrollMove?: iScrollEvent;
29-
onBeforeScrollEnd?: iScrollEvent;
30-
onScrollEnd?: iScrollEvent;
31-
onTouchEnd?: iScrollEvent;
32-
onDestroy?: iScrollEvent;
6+
interface IScrollOptions {
7+
hScroll?: boolean;
8+
vScroll?: boolean;
9+
x?: number;
10+
y?: number;
11+
bounce?: boolean;
12+
bounceLock?: boolean;
13+
momentum?: boolean;
14+
lockDirection?: boolean;
15+
useTransform?: boolean;
16+
useTransition?: boolean;
3317
}
3418

3519
declare class iScroll {
3620

37-
constructor (element: string, options?: iScrollOptions);
38-
constructor (element: HTMLElement, options?: iScrollOptions);
21+
constructor (element: string, options?: IScrollOptions);
22+
constructor (element: HTMLElement, options?: IScrollOptions);
23+
24+
destroy(): void;
25+
refresh(): void;
26+
scrollTo(x: number, y: number, time?: number, relative?: boolean): void;
27+
scrollToElement(element: string, time?: number): void;
28+
scrollToElement(element: HTMLElement, time?: number): void;
29+
disable(): void;
30+
enable(): void;
31+
stop(): void;
3932

40-
destroy(): void;
41-
refresh(): void;
42-
scrollTo(x: number, y: number, time?: number, relative?: boolean): void;
43-
scrollToElement(element: string, time?: number): void;
44-
scrollToElement(element: HTMLElement, time?: number): void;
45-
disable(): void;
46-
enable(): void;
47-
stop(): void;
33+
// Events
34+
on: (type: string, fn: () => void) => void;
4835
}

iscroll/iscroll-5-tests.ts

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,23 @@
1-
/// <reference path="iscroll.d.ts" />
1+
/// <reference path="iscroll-5.d.ts" />
22

3-
var myScroll1 = new iScroll('wrapper');
4-
var myScroll2 = new iScroll('wrapper', { hScrollbar: false, vScrollbar: false });
5-
var myScroll3= new iScroll('wrapper', {
3+
var myScroll1 = new IScroll('#wrapper');
4+
var myScroll2 = new IScroll('#wrapper', { hScrollbar: false, vScrollbar: false });
5+
var myScroll3 = new IScroll('#wrapper', {
66
snap: true,
77
momentum: false,
88
hScrollbar: false,
99
vScrollbar: false
1010
});
11-
var myScroll4 = new iScroll('wrapper', {
11+
var myScroll4 = new IScroll('#wrapper', {
1212
snap: 'li',
1313
momentum: false,
1414
hScrollbar: false,
1515
vScrollbar: false
1616
});
17-
var myScroll6 = new iScroll('wrapper', { scrollbarClass: 'myScrollbar' });
17+
var myScroll6 = new IScroll('#wrapper', { scrollbarClass: 'myScrollbar' });
18+
var myScroll7 = new IScroll('#wrapper', { bounceEasing: 'elastic', bounceTime: 1200 });
19+
20+
var myScroll8 = new IScroll('#wrapper', { eventPassthrough: true, scrollX: true, scrollY: false, preventDefault: false });
1821

1922
myScroll1.refresh();
2023
myScroll1.scrollTo(0, 100);
@@ -27,5 +30,7 @@ myScroll1.scrollToElement('selectedElement', 250);
2730
myScroll1.scrollToElement(document.getElementById('selectedElement'));
2831
myScroll1.scrollToElement(document.getElementById('selectedElement'), 250);
2932

30-
var myScroll7 = new iScroll(document.getElementById('wrapper'));
31-
var myScroll8 = new iScroll(document.getElementById('wrapper'), { scrollbarClass: 'myScrollbar' });
33+
myScroll2.on('scrollStart', function () { console.log('scroll started'); });
34+
35+
var myScroll9 = new IScroll(document.getElementById('wrapper'));
36+
var myScroll10 = new IScroll(document.getElementById('wrapper'), { scrollbarClass: 'myScrollbar' });

iscroll/iscroll-5.d.ts

Lines changed: 55 additions & 71 deletions
Original file line numberDiff line numberDiff line change
@@ -1,76 +1,60 @@
1-
// Type definitions for iScroll 4.2
2-
// Project: http://cubiq.org/iscroll-4
3-
// Definitions by: Boris Yankov <https://github.com/borisyankov/> and Christiaan Rakowski <https://github.com/csrakowski/>
1+
// Type definitions for iScroll 5
2+
// Project: http://cubiq.org/iscroll-5-ready-for-beta-test
3+
// Definitions by: Christiaan Rakowski <https://github.com/csrakowski/>
44
// Definitions: https://github.com/borisyankov/DefinitelyTyped
55

6-
7-
interface iScrollEvent {
8-
(e: Event): void;
6+
interface IScrollOptions {
7+
hScroll?: boolean;
8+
vScroll?: boolean;
9+
x?: number;
10+
y?: number;
11+
bounce?: boolean;
12+
bounceLock?: boolean;
13+
momentum?: boolean;
14+
lockDirection?: boolean;
15+
useTransform?: boolean;
16+
useTransition?: boolean;
17+
topOffset?: number;
18+
checkDOMChanges?: boolean;
19+
handleClick?: boolean;
20+
21+
// Scrollbar
22+
hScrollbar?: boolean;
23+
vScrollbar?: boolean;
24+
fixedScrollbar?: boolean;
25+
hideScrollbar?: boolean;
26+
fadeScrollbar?: boolean;
27+
scrollbarClass?: string;
28+
29+
// Zoom
30+
zoom?: boolean;
31+
zoomMin?: number;
32+
zoomMax?: number;
33+
doubleTapZoom?: number;
34+
wheelAction?: string;
35+
36+
// Snap
37+
snap?: any;
38+
snapThreshold?: number;
939
}
1040

11-
interface iScrollOptions {
12-
hScroll?: boolean;
13-
vScroll?: boolean;
14-
x?: number;
15-
y?: number;
16-
bounce?: boolean;
17-
bounceLock?: boolean;
18-
momentum?: boolean;
19-
lockDirection?: boolean;
20-
useTransform?: boolean;
21-
useTransition?: boolean;
22-
topOffset?: number;
23-
checkDOMChanges?: boolean;
24-
handleClick?: boolean;
25-
26-
// Scrollbar
27-
hScrollbar?: boolean;
28-
vScrollbar?: boolean;
29-
fixedScrollbar?: boolean;
30-
hideScrollbar?: boolean;
31-
fadeScrollbar?: boolean;
32-
scrollbarClass?: string;
33-
34-
// Zoom
35-
zoom?: boolean;
36-
zoomMin?: number;
37-
zoomMax?: number;
38-
doubleTapZoom?: number;
39-
wheelAction?: string;
40-
41-
// Snap
42-
snap?: any;
43-
snapThreshold?: number;
44-
45-
// Events
46-
onRefresh?: iScrollEvent;
47-
onBeforeScrollStart?: iScrollEvent;
48-
onScrollStart?: iScrollEvent;
49-
onBeforeScrollMove?: iScrollEvent;
50-
onScrollMove?: iScrollEvent;
51-
onBeforeScrollEnd?: iScrollEvent;
52-
onScrollEnd?: iScrollEvent;
53-
onTouchEnd?: iScrollEvent;
54-
onDestroy?: iScrollEvent;
55-
onZoomStart?: iScrollEvent;
56-
onZoom?: iScrollEvent;
57-
onZoomEnd?: iScrollEvent;
58-
}
59-
60-
declare class iScroll {
61-
62-
constructor (element: string, options?: iScrollOptions);
63-
constructor (element: HTMLElement, options?: iScrollOptions);
64-
65-
destroy(): void;
66-
refresh(): void;
67-
scrollTo(x: number, y: number, time?: number, relative?: boolean): void;
68-
scrollToElement(element: string, time?: number): void;
69-
scrollToElement(element: HTMLElement, time?: number): void;
70-
scrollToPage(pageX: number, pageY: number, time?: number): void;
71-
disable(): void;
72-
enable(): void;
73-
stop(): void;
74-
zoom(x: number, y: number, scale: number, time?: number): void;
75-
isReady(): boolean;
41+
declare class IScroll {
42+
43+
constructor (element: string, options?: IScrollOptions);
44+
constructor (element: HTMLElement, options?: IScrollOptions);
45+
46+
destroy(): void;
47+
refresh(): void;
48+
scrollTo(x: number, y: number, time?: number, relative?: boolean): void;
49+
scrollToElement(element: string, time?: number): void;
50+
scrollToElement(element: HTMLElement, time?: number): void;
51+
scrollToPage(pageX: number, pageY: number, time?: number): void;
52+
disable(): void;
53+
enable(): void;
54+
stop(): void;
55+
zoom(x: number, y: number, scale: number, time?: number): void;
56+
isReady(): boolean;
57+
58+
// Events
59+
on: (type: string, fn: () => void) => void;
7660
}

0 commit comments

Comments
 (0)