iOS   发布时间:2022-03-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios11 webview html画布内容已被页面滚动清除大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用canvas制作的html页面在ios11中变得与众不同!

当首次在webview中显示时,页面看起来很好,但是,当它向下滚动并且其中的画布在视口中变得不可见时,画布中的内容会消失,并且当页面滚动回顶部时永远不会返回.

有人知道如何解决这个问题,或者我应该等到苹果稍后修复它?

解决方法

对我来说同样的问题.我注意到如果我在Safari Web Inspector中切换画布的任何属性,它将再次呈现.在SO( Cordova Webview canvas redering bug on recent iOS versions (10.3.1))上报道了另一个类似的问题.

所以我的计划是检测顶部的滚动事件并强制重绘DOM元素.我决定从scroll event is not well supported on mobile device开始使用scrollstop事件.touchmove事件也正常工作但它不如scrollevent好,因为它只在手指触摸屏幕时才会发生.

$('#my-canvas').on({
    'scrollstop': function(E) {
        // e.scrollTop() doesn't work... so
        console.log($(window).scrollTop()); 
        if ($(window).scrollTop() === 0) {
           console.log("Redraw of the canvas");
           $('#my-canvas').hide().show(0);
        }
    }
});

不相信它是钻石代码,但它只适用于iOs.

PS:问题可能只存在于遗留Web视图而不是WkWebView.但最后一个是如此具有挑战性,有很多不同的网络问题,我从来没有能够使用它.

大佬总结

以上是大佬教程为你收集整理的ios11 webview html画布内容已被页面滚动清除全部内容,希望文章能够帮你解决ios11 webview html画布内容已被页面滚动清除所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。