uniapp input 聚焦时键盘弹起滚动到对应的部分

实现效果

代码如下

javascript 复制代码
<template>
	<view id='app'>
	<view class="aa"></view>
	<iconfont name="left"></iconfont>
		姓氏:<input style="background-color: antiquewhite;" type="text" v-model="aa" @focus="focus()" class="input1">+

	</view>
</template>

<script>
	export default {
		data() {
			return {
				
			}
		},
		methods: {
			focus(value){
				console.log(111)
				this.pageScroll()
			},
			pageScroll() {
				// 先获取目标dom的实例信息
				// data即为实例信息, data.top, data.left, data.right, data.bottom即为dom的对应坐标
				uni.createSelectorQuery().select('.input1').boundingClientRect(data => { 
					console.log("data.top",data.top)
					// 调用页面滚动的api
					uni.pageScrollTo({
						duration: 100, // 滚动动画过渡时间
						scrollTop: data.top, // 滚动的值
					})
				}).exec();
			},
		},
	}
</script>
<style >
	.aa{
		height: 1300rpx;
		width: 100%;
		background-color: red;
	}
</style>
相关推荐
知识分享小能手22 分钟前
Vue3 学习教程,从入门到精通,Axios 在 Vue 3 中的使用指南(37)
前端·javascript·vue.js·学习·typescript·vue·vue3
伍哥的传说1 小时前
Mitt 事件发射器完全指南:200字节的轻量级解决方案
vue.js·react.js·vue3·mitt·组件通信·事件管理·事件发射器
一枚小小程序员哈4 小时前
基于Vue + Node能源采购系统的设计与实现/基于express的能源管理系统#node.js
vue.js·node.js·express
烛阴5 小时前
精简之道:TypeScript 参数属性 (Parameter Properties) 详解
前端·javascript·typescript
开发者小天6 小时前
为什么 /deep/ 现在不推荐使用?
前端·javascript·node.js
一枚小小程序员哈8 小时前
基于Vue的个人博客网站的设计与实现/基于node.js的博客系统的设计与实现#express框架、vscode
vue.js·node.js·express
找不到工作的菜鸟8 小时前
Three.js三大组件:场景(Scene)、相机(Camera)、渲染器(Renderer)
前端·javascript·html
定栓8 小时前
vue3入门-v-model、ref和reactive讲解
前端·javascript·vue.js
binqian9 小时前
【异步】js中异步的实现方式 async await /Promise / Generator
开发语言·前端·javascript
LIUENG9 小时前
Vue3 响应式原理
前端·vue.js