File tree Expand file tree Collapse file tree 1 file changed +14
-4
lines changed Expand file tree Collapse file tree 1 file changed +14
-4
lines changed Original file line number Diff line number Diff line change 1
- import $ from 'jquery' ;
2
1
import { get } from '@ember/object' ;
3
2
import AnchorComponent from 'ember-anchor/components/ember-anchor' ;
4
3
import config from 'ember-api-docs/config/environment' ;
5
4
6
5
export default AnchorComponent . extend ( {
6
+ getOffset ( element , container ) {
7
+ let offsetTop = element . offsetTop ;
8
+ let parent = element . offsetParent ;
9
+ while ( parent != null && parent != container ) {
10
+ offsetTop += parent . offsetTop ;
11
+ parent = parent . offsetParent ;
12
+ }
13
+ return offsetTop ;
14
+ } ,
7
15
8
16
// This overrides Ember Anchor to support scrolling within a fixed position element
9
17
_scrollToElemPosition ( ) {
10
18
let qp = this . anchorQueryParam ;
11
19
let qpVal = this . get ( get ( this , 'attrs.a' ) ? 'a' : `controller.${ qp } ` ) ;
12
- let elem = $ ( `[data-${ qp } ="${ qpVal } "]` ) ;
13
- let offset = elem . offset ( ) ? elem . offset ( ) . top : 0 ;
20
+ let elem = document . querySelector ( `[data-${ qp } ="${ qpVal } "]` ) ;
21
+ let offset = elem . offsetHeight ? elem . offsetHeight : 0 ;
22
+
14
23
if ( offset ) {
15
- $ ( config . APP . scrollContainerSelector ) . scrollTop ( offset ) ;
24
+ const offsetTop = this . getOffset ( elem , config . APP . scrollContainerSelector )
25
+ document . querySelector ( config . APP . scrollContainerSelector ) . scrollTo ( 0 , offsetTop ) ;
16
26
}
17
27
}
18
28
} ) ;
You can’t perform that action at this time.
0 commit comments