1
- var EnjoyHint = function ( _options ) {
1
+ //TODO: localization support
2
+ /**
3
+ *
4
+ * @param {* } configs
5
+ */
6
+ var EnjoyHint = function ( configs ) {
7
+
2
8
3
9
var $event_element ;
4
10
var that = this ;
11
+ var _options = configs || { } ;
12
+ var BTN_NEXT_TEXT = _options . btnNextText || "Next" ;
13
+ var BTN_SKIP_TEXT = _options . btnSkipText || "Skip" ;
14
+
15
+ var SHAPE_BACKGROUND_COLOR = _options . backgroundColor || "rgba(0,0,0,0.6)" ;
16
+
17
+
18
+ var body = 'body' ; // TODO: Is it possible case when we need to define enjoyhint somewhere else?
5
19
6
20
var defaults = {
7
21
@@ -26,7 +40,7 @@ var EnjoyHint = function (_options) {
26
40
var data = [ ] ;
27
41
var current_step = 0 ;
28
42
29
- $body = $ ( ' body' ) ;
43
+ $body = $ ( body ) ;
30
44
31
45
32
46
/********************* PRIVATE METHODS ***************************************/
@@ -41,7 +55,7 @@ var EnjoyHint = function (_options) {
41
55
$body . css ( { 'overflow' :'hidden' } ) ;
42
56
43
57
$ ( document ) . on ( "touchmove" , lockTouch ) ;
44
-
58
+
45
59
$body . enjoyhint ( {
46
60
47
61
onNextClick : function ( ) {
@@ -53,7 +67,8 @@ var EnjoyHint = function (_options) {
53
67
54
68
options . onSkip ( ) ;
55
69
skipAll ( ) ;
56
- }
70
+ } ,
71
+ fill : SHAPE_BACKGROUND_COLOR
57
72
} ) ;
58
73
} ;
59
74
@@ -75,9 +90,9 @@ var EnjoyHint = function (_options) {
75
90
var $skipBtn = $ ( '.enjoyhint_skip_btn' ) ;
76
91
77
92
$nextBtn . removeClass ( that . nextUserClass ) ;
78
- $nextBtn . text ( "Next" ) ;
93
+ $nextBtn . text ( BTN_NEXT_TEXT ) ;
79
94
$skipBtn . removeClass ( that . skipUserClass ) ;
80
- $skipBtn . text ( "Skip" ) ;
95
+ $skipBtn . text ( BTN_SKIP_TEXT ) ;
81
96
} ;
82
97
83
98
var stepAction = function ( ) {
@@ -331,7 +346,7 @@ var EnjoyHint = function (_options) {
331
346
332
347
$body . enjoyhint ( 'redo_events_near_rect' , $event_element [ 0 ] . getBoundingClientRect ( ) ) ;
333
348
}
334
- } ) ;
349
+ } , false ) ;
335
350
336
351
that . stop = function ( ) {
337
352
@@ -383,14 +398,17 @@ var EnjoyHint = function (_options) {
383
398
} ;
384
399
385
400
that . setScript = function ( _data ) {
386
-
387
- if ( _data ) {
388
-
389
- data = _data ;
401
+ if ( ! ( _data instanceof Array ) && _data . length < 1 ) {
402
+ throw new Error ( "Configurations list isn't correct." )
390
403
}
404
+
405
+ data = _data ;
391
406
} ;
392
407
393
408
//support deprecated API methods
409
+ /**
410
+ * Configure data list
411
+ */
394
412
that . set = function ( _data ) {
395
413
396
414
that . setScript ( _data ) ;
0 commit comments