这个问题解决了吗?
h5拨打电话安卓页面卡死?[图片][图片][图片] 苹果的打电话,打完页面正常,安卓的打电话,打完页面假死,什么也无法点击
2023-05-25我也遇到这个问题了,有谁解决了吗?
createIntersectionObserver 滑动过快有时候有时候无法监听到元素<template> <view class="container"> <view class="page-body"> <view class="page-section message"> <view>当前滚动方向 -> {{ dir === 'top' ? '向上' : dir === 'bottom' ? '向下' : dir === 'nav' ? '顶' : '底' }}</view> <view>当前激活的item -> {{ notic }}</view> </view> <scroll-view :display-multiple-items="subItem1.length" scroll-x="true" :scroll-into-view="notic" class="sc" scroll-with-animation> <view v-for="item in subItem1" :id="`item-${item}`" :key="item" :current-item-id="`item-${item}`" @click="useClick(`item-${item}`)" class="sc-item" :class="{ active: `item-${item}` === notic }"> {{item}}</view> </scroll-view> <view class="page-section"> <scroll-view enhanced @scroll="scroller" class="scroll-view" scroll-y @scrolltolower="add" @scrolltoupper="reset" :scroll-into-view="navId"> <view :data-next-id="`item-${item+1 > subItem.length ? item : item+1}`" v-for="item in subItem" :class="item === 3 && 'small'" class="ball" :id="`item-${item}`" :key="item" :data-id="item"> {{item}}</view> </scroll-view> </view> </view> </view> </template> <script> export default { data: () => ({ appear: false, subItem: [], subItem1: [], dir: 'nav', notic: 'item-1', navId: 'item-1', cachTop: 0, onClick: false }), created() { /// 设置当前数量 const idx = 10 for (let i = 0; i < idx; i++) { this.subItem.push(i + 1) this.subItem1.push(i + 1) } }, onLoad() { this.observe() }, onUnload() {}, methods: { desc() { if (this._observer) this._observer.disconnect() }, observe() { this._observer = wx.createIntersectionObserver(this, { observeAll: true }) this._observer .relativeTo('.scroll-view') .observe('.ball', (res) => { if (!this.onClick) { let _id = this.notic if (this.dir === 'top') { /// 关注谁出现 if (res.intersectionRatio > 0) { _id = res.id } } if (this.dir === 'bottom') { /// 关注谁消失,然后下一个进入 if (res.intersectionRatio === 0) { _id = res.dataset.nextId } } this.setNavId(_id) } else { this.navId = this.notic } }) }, setNavId(id) { console.log(id) this.notic = id }, scroller(e) { this.$nextTick(() => { const top = e.detail.scrollTop if (top > this.cacheTop) { this.dir = 'bottom' } else { this.dir = 'top' } this.cacheTop = top /// 结束的时候把全局的干掉 this.onClick = false }) }, reset() { this.cacheTop = 0 this.dir = 'nav' }, useClick(item) { this.onClick = true this._observer && this._observer.disconnect() this._observer = null this.$nextTick(() => { this.notic = item this.observe() }) }, add(e) { // if(this.isLoad) return // this.subItem = [] // this.$nextTick(() => { // this.subItem.push(...[1,2,3, 4,5,6]) // this.isLoad = true // this.desc() // this.$nextTick(() => { // this.observe() // }) // }) } } } </script> <style> .scroll-view { height: 1000rpx; background: #fff; border: 1px solid #ccc; box-sizing: border-box; } .scroll-area { height: 1300rpx; display: flex; flex-direction: column; align-items: center; transition: .5s; } .notice { margin-top: 150rpx; } .ball { width: 400rpx; height: 400rpx; background: #1AAD19; font-size: 100rpx; border-radius: 50%; color: red; text-align: center; line-height: 400rpx; } /* .ball.small { width: 400rpx; height: 100rpx; line-height: 100rpx; } */ .message { width: 100%; } .message text { font-size: 40rpx; font-family: -apple-system-font, Helvetica Neue, Helvetica, sans-serif; } .sc { display: flex; height: 200rpx; overflow-y: scroll; } .sc-item { padding: 10px; border: 1px solid #ccc; margin: 10px; display: inline-block; } .sc-item.active { color: #fff; border: #1AAD19; background: #1AAD19; } </style> 代码是用uni-app写的很简单。下面的是效果,快速拖动的时候,有可能有时候会漏掉一些监听。。这代码提交怎么成这样了。。。见了鬼 [图片]
2021-05-21如果你的页面在初始化的时候,改变了路由地址或参数,就会出现这个问题,因为小程序监听了window的路由变化,如何你必须要切换路由改用重定向就好了,如果你是用vue写的项目可以参考如下代码进行修改:[图片]
动态修改webview的src,产生页面hostory,需按两次返回键才能回到上一页,如何解决?动态修改webview的src之后,webview页面产生历史记录,此时点击返回,停留在webview页面,src由修改后的地址,返回到了修改之前的地址, 期望结果:返回直接回到上一层页面,不停留在webview 望大家解答。
2020-09-05如果你的页面在初始化的时候,改变了路由地址或参数,就会出现这个问题,因为小程序监听了window的路由变化,如何你必须要切换路由改用重定向就好了,如果你是用vue写的项目可以参考如下代码进行修改:[图片]
安卓机webview页面需要按两次返回键才能回到上一页- 当前 Bug 的表现(可附上截图) 进入webview页面,需要点两次返回键才能返回上一页 - 提供一个最简复现 Demo 小程序名称:秀推智能营销 复现方法:从产品秀点击一个产品进入,需要点两次返回键才能回到产品秀
2020-09-05