diff --git a/pages/template/pull-zoom-image/pull-zoom-image.uvue b/pages/template/pull-zoom-image/pull-zoom-image.uvue index a8dc5d99404b2497a21180ec493b6fb97f933177..3ccf595d9499a9039dc347acd6e73291e87732cf 100644 --- a/pages/template/pull-zoom-image/pull-zoom-image.uvue +++ b/pages/template/pull-zoom-image/pull-zoom-image.uvue @@ -1,34 +1,34 @@ @@ -39,10 +39,24 @@ $INodeMap: new Map() } }, - methods: { + methods: { + onScroll(e : ScrollEvent) { + const {scrollTop} = e.detail + let y : number = scrollTop - 110 + let s : number = (100 - scrollTop/3)/100 + if(y < 0){ + y = 0 + } + if(s < 0.7){ + s = 0.7 + } + let x : number = (1 - s) * -100 + this.setINodeStyle("user-info", "transform", `translate(${x},${y + (s-1)* -50}px) scale(${s})`) + this.setINodeStyle("head-img-box-2", "transform", `translateY(${y}px)`) + }, onRefresherpulling(e : RefresherEvent) { // console.log('onRefresherpulling',e.detail.dy) - let pullingDistance:number = e.detail.dy + let pullingDistance : number = e.detail.dy this.setINodeStyle("head-img-1", 'transform', `scale(${pullingDistance / 200 + 1})`) this.setINodeStyle("head-img-2", 'transform', `scale(${pullingDistance / 200 + 1})`) }, @@ -73,79 +87,80 @@