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 @@
-
+
-
-
-
+ refresher-default-style="none" @refresherpulling="onRefresherpulling"
+ :refresher-threshold="300" :refresher-max-drag-distance="299"
+ @scroll="onScroll" :rebound="false"
+ >
+
+
-
-
-
-
- uni-app-x
- 一次开发,多端覆盖
-
-
-
-
- {{item}}. 占位
-
+
+
+
+ uni-app-x
+ 一次开发,多端覆盖
-
+
+
+
+ {{item}}. 占位
+
+
-
-
+
+
-
+
+
@@ -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 @@