Skip to content

Commit 9eefe75

Browse files
committed
added offset
1 parent 1ac9786 commit 9eefe75

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed

index.js

+7-3
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,15 @@
44

55
Vue.directive('scrollspy', {
66
twoWay: true,
7-
params: ["steps", "time"],
7+
params: ["steps", "time", "offset"],
88
// {
99
// steps: {type: Number, required: false, default: 0},
1010
// time: {type: Number, required: false, default: 0}
1111
// },
1212
scrollSections: [],
1313
scroll: function(){
14-
var pos = this.el.scrollTop
14+
var offset = parseInt(this.params.offset) || 0
15+
var pos = this.el.scrollTop + offset
1516
var i = 0
1617
while(pos >= this.scrollSections[i]){i++}
1718
this.set(i ? i - 1 : 0)
@@ -21,8 +22,11 @@
2122
var target = this.scrollSections[id]
2223
var time = parseInt(this.params.time) || 0
2324
var steps = parseInt(this.params.steps) || 0
25+
var offset = parseInt(this.params.offset) || 0
2426
var el = this.el
2527

28+
target -= offset
29+
target < 0 ? 0 : target
2630
if(!steps){
2731
el.scrollTop = target
2832
}else{
@@ -37,7 +41,7 @@
3741
}
3842
},
3943
init: function(){
40-
this.scrollSections = [0]
44+
this.scrollSections = []
4145
var sections = this.el.children
4246
for (var i = 0; i < sections.length; i++){
4347
if(sections[i].offsetTop > 0){

0 commit comments

Comments
 (0)