File tree Expand file tree Collapse file tree 1 file changed +13
-6
lines changed Expand file tree Collapse file tree 1 file changed +13
-6
lines changed Original file line number Diff line number Diff line change @@ -135,7 +135,7 @@ export class Parse5DomAdapter extends DomAdapter {
135
135
} ;
136
136
return evt ;
137
137
}
138
- preventDefault ( evt ) {
138
+ preventDefault ( evt ) {
139
139
evt . returnValue = false ;
140
140
}
141
141
getInnerHTML ( el ) {
@@ -302,11 +302,18 @@ export class Parse5DomAdapter extends DomAdapter {
302
302
throw _notImplemented ( 'getDistributedNodes' ) ;
303
303
}
304
304
clone ( node ) {
305
- var temp = treeAdapter . createElement ( "template" , null , [ ] ) ;
306
- treeAdapter . appendChild ( temp , node ) ;
307
- var serialized = serializer . serialize ( temp ) ;
308
- var newParser = new parse5 . Parser ( parse5 . TreeAdapters . htmlparser2 ) ;
309
- return newParser . parseFragment ( serialized ) . childNodes [ 0 ] ;
305
+ // e.g. document fragment
306
+ if ( node . type === 'root' ) {
307
+ var serialized = serializer . serialize ( node ) ;
308
+ var newParser = new parse5 . Parser ( parse5 . TreeAdapters . htmlparser2 ) ;
309
+ return newParser . parseFragment ( serialized ) ;
310
+ } else {
311
+ var temp = treeAdapter . createElement ( "template" , null , [ ] ) ;
312
+ treeAdapter . appendChild ( temp , node ) ;
313
+ var serialized = serializer . serialize ( temp ) ;
314
+ var newParser = new parse5 . Parser ( parse5 . TreeAdapters . htmlparser2 ) ;
315
+ return newParser . parseFragment ( serialized ) . childNodes [ 0 ] ;
316
+ }
310
317
}
311
318
hasProperty ( element , name :string ) {
312
319
return _HTMLElementPropertyList . indexOf ( name ) > - 1 ;
You can’t perform that action at this time.
0 commit comments