现在有个需求是在当前页面添加可拖拽的悬浮球,但是页面长度太长,当拖拽的时候,球和页面一起滚动,很是苦恼,但是当页面没有滚动条的时候悬浮球是正常的,所以判断是页面太长,悬浮球计算了整个页面的高度来计算激动的,而不是可视区域,所以,有个思路,当手指触屏的时候把页面锁死,手指离开屏幕的时候解除限制,这样悬浮球可自行移动,页面不滚动,完美解决,废话不多说上代码

<view v-if="radioUrl&&audioPlay==false">
			<view class="touch" id="id-index"
				:style="{'transform':'translate3d('+xMove+'px,'+yMove+'px,0)'}"
				@touchstart.stop.prevent="handleStart" @touchmove.stop.prevent="handleMove" @touchend.stop.prevent="handleEnd"
			>
				<WzsAudio
				:music="radioUrl"
				image="../../static/audioFrequency/audioFrequency.png" 
				:title="title" 
				:autoplay="false"
				:radioStop="radioStop"
				@close="closeed">
				</WzsAudio>
			</view>
		</view>
@touchstart.stop.prevent="handleStart" @touchmove.stop.prevent="handleMove" @touchend.stop.prevent="handleEnd" 主要是 @touchstart.stop.prevent这个方法阻止事件冒泡,完美结束罪恶的一天
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐