This repository was archived by the owner on Oct 8, 2021. It is now read-only.
File tree Expand file tree Collapse file tree 3 files changed +45
-3
lines changed Expand file tree Collapse file tree 3 files changed +45
-3
lines changed Original file line number Diff line number Diff line change @@ -299,7 +299,7 @@ $.widget( "mobile.panel", {
299
299
o = self . options ,
300
300
301
301
_openPanel = function ( ) {
302
- self . document . off ( "panelclose" ) ;
302
+ self . _off ( self . document , "panelclose" ) ;
303
303
self . _page ( ) . jqmData ( "panel" , "open" ) ;
304
304
305
305
if ( $ . support . cssTransform3d && ! ! o . animate && o . display !== "overlay" ) {
@@ -362,8 +362,8 @@ $.widget( "mobile.panel", {
362
362
self . _trigger ( "beforeopen" ) ;
363
363
364
364
if ( self . _page ( ) . jqmData ( "panel" ) === "open" ) {
365
- self . document . on ( "panelclose" , function ( ) {
366
- _openPanel ( ) ;
365
+ self . _on ( self . document , {
366
+ "panelclose" : " _openPanel"
367
367
} ) ;
368
368
} else {
369
369
_openPanel ( ) ;
Original file line number Diff line number Diff line change @@ -100,6 +100,16 @@ <h1 id="demo-links">Panels</h1>
100
100
< a href ="#panel-test-id-change "> Open Panel</ a >
101
101
< a href ="#panel-test-external "> Open Panel</ a >
102
102
</ div >
103
+
104
+ < div data-nstest-role ="panel " id ="panel-panelclose-event ">
105
+ < h1 > Panel!</ h1 >
106
+ </ div >
107
+ < div data-nstest-role ="panel " id ="panel-openfirst " data-position ="left ">
108
+ < h1 > first panel</ h1 >
109
+ </ div >
110
+ < div data-nstest-role ="panel " id ="panel-opensecond " data-position ="right ">
111
+ < h1 > second panel</ h1 >
112
+ </ div >
103
113
</ div >
104
114
< div data-nstest-role ="page " id ="page2 "> </ div >
105
115
< div id ="external-panel-getWrapper-test "> </ div >
Original file line number Diff line number Diff line change 197
197
$panel . panel ( ) ;
198
198
} ) ;
199
199
200
+ asyncTest ( "panelclose not called on document" , function ( ) {
201
+ expect ( 2 ) ;
202
+
203
+ $ ( document ) . on ( "panelopen" , "#panel-panelclose-event" , function ( ) {
204
+ $ ( this ) . panel ( "close" ) ;
205
+ } ) ;
206
+
207
+ $ ( document ) . on ( "panelclose" , "#panel-panelclose-event" , function ( ) {
208
+ ok ( true , "document panelclose event emitted" ) ;
209
+ } ) ;
210
+
211
+ $ ( document . body ) . on ( "panelclose" , "#panel-panelclose-event" , function ( ) {
212
+ ok ( true , "document.body panelclose event emitted" ) ;
213
+ start ( ) ;
214
+ } ) ;
215
+
216
+ $ ( "#panel-panelclose-event" ) . panel ( "open" ) ;
217
+
218
+ } ) ;
219
+
220
+ asyncTest ( "should be able to open a second panel" , function ( ) {
221
+ expect ( 1 ) ;
222
+
223
+ $ ( document ) . on ( "panelopen" , "#panel-opensecond" , function ( ) {
224
+ ok ( true , "second panel opened" ) ;
225
+ start ( ) ;
226
+ } ) ;
227
+
228
+ $ ( "#panel-openfirst" ) . panel ( "open" ) ;
229
+ $ ( "#panel-opensecond" ) . panel ( "open" ) ;
230
+ } ) ;
231
+
200
232
module ( "dismissable panel" , {
201
233
setup : function ( ) {
202
234
$ . Event . prototype . originalEvent = {
You can’t perform that action at this time.
0 commit comments