Merge pull request #4007 from lison16/anchor

增加scroll-offset属性,定义滚动结束后距离容器顶部的距离
This commit is contained in:
Aresn 2018-07-02 16:42:55 +08:00 committed by GitHub
commit c270c09a81
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 2 deletions

View file

@ -3,7 +3,7 @@
<div class="link-wrapper">
<Button @click="changeCon">修改为Window</Button>
<Button @click="andLink">添加一个连接</Button>
<Anchor @on-change="handleChange" @on-select="handleSelect" :style="{right: '100px'}" :affix="true" :offset-top="30" :container="scrollCon" show-ink-in-fixed>
<Anchor :bounds="100" @on-change="handleChange" @on-select="handleSelect" :style="{right: '100px'}" :affix="true" :offset-top="30" :scroll-offset="100" :container="scrollCon" show-ink-in-fixed>
<AnchorLink v-if="(link - 1) % 30 === 0" v-for="link in 300" :key="`link${link}`" :href="`#title-${link}`" :title="`title-${link}`">
<AnchorLink v-if="link === 61" href="#title-child-69" title="title-child-69"/>
</AnchorLink>

View file

@ -53,6 +53,10 @@ export default {
showInkInFixed: {
type: Boolean,
default: false
},
scrollOffset: {
type: Number,
default: 0
}
},
computed: {
@ -92,7 +96,7 @@ export default {
handleScrollTo () {
const anchor = document.getElementById(this.currentId);
if (!anchor) return;
const offsetTop = anchor.offsetTop - this.wrapperTop;
const offsetTop = anchor.offsetTop - this.wrapperTop - this.scrollOffset;
this.animating = true;
scrollTop(this.scrollContainer, this.scrollElement.scrollTop, offsetTop, 600, () => {
this.animating = false;