z***@gmail.com
z***@gmail.com
  • 发布:2017-12-04 17:24
  • 更新:2017-12-07 12:29
  • 阅读:2442

【报Bug】iOS环境,plus.webview.open新窗口时,titleNView设置的 autoBackButton 无效

分类:HTML5+

详细问题描述
iOS环境,plus.webview.open新窗口时,titleNView设置的 autoBackButton : true 无效。
点击后页面无变化。
但是当用手势右划时却可以关闭当前webview。但是关闭后app变白屏。

推测:返回键点下未必是没有反应,而是反应错了地方,把launchView给关掉了

重现步骤
[步骤]
页面A,子页面B
页面A中调用 plus.webview.open 打开新窗口,并且传递参数 autoBackButton : true
打开页面B,页面B自带返回键
[结果]
iOS手机点击返回键无任何反馈。当用手势关闭页面B后,显示一个白屏页面
Android手机点击返回键页面B关闭,页面A显示
[期望]
手机点击返回键页面B关闭,页面A显示

运行环境
[系统版本]
ios 10.3
[浏览器版本]
[IDE版本]
8.8.7.201712040231-alpha
[mui版本]

附件
[代码片段]

    //新开窗口样式  
    {  
        'titleNView':{  
            'backgroundcolor':'#FFFFFF' ,  
            'titlecolor':'#333333',   
            'autoBackButton' : true,   
            'homeButton' : true,  
            'splitLine' : { 'color' : '#e9e9e9' }  
        },  
        'backButtonAutoControl' : 'close',  
    }

[安装包]

联系方式
[QQ]
[电话]

2017-12-04 17:24 负责人:无 分享
已邀请:

最佳回复

n***@gmail.com

n***@gmail.com

你好,此问题已得到确认,这里说明一下因为ios和安卓的平台差异,后退逻辑处理上默认原则为安卓返回上一页,ios上如果有监听backbutton按钮,则触发back事件,没有监听backbutton按钮,默认不做处理,也就是你所说的点击无效。autoBackButton按钮只触发事件,如果没有监听此事件,自然不会有反应。

所以,ios上使用titleNView的autoBackButton按钮,需要开发者监听backbutton按钮,做逻辑处理

  • z***@gmail.com (作者)

    我晕。。。 居然是这么个逻辑。。。。 我后来自己通过自定义 buttons 实现了。

    2017-12-07 14:13

Trust

Trust - 少说废话

上传一个可以重现问题的demo

  • z***@gmail.com (作者)

    如下面的评论。 随便创建一个空的 test.html 即可进行测试

    2017-12-04 19:07

z***@gmail.com

z***@gmail.com (作者) - Hbuilder是个好东西

<!DOCTYPE html>  
<html>  
<head>  
    <meta charset="utf-8">  
    <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />  
    <title></title>  
    <script type="text/javascript">  

        document.addEventListener('plusready', function(){  
            //console.log("所有plus api都应该在此事件发生后调用,否则会出现plus is undefined。"  
            setTimeout(function(){  
                plus.webview.open('test.html', 'test', {  
                    'titleNView':{  
                        'backgroundcolor':'#FFFFFF' ,  
                        'titlecolor':'#333333',   
                        'autoBackButton' : true,   
                        'homeButton' : true,  
                        'splitLine' : { 'color' : '#e9e9e9' }  
                    },  
                    'backButtonAutoControl' : 'close',  
                }, 'slide-in-right');  
            }, 1000);  
        });  

    </script>  
</head>  
<body>  
    1秒后打开测试页面  
</body>  
</html>

该问题目前已经被锁定, 无法添加新回复