灬菜菜
灬菜菜
  • 发布:2014-10-15 09:46
  • 更新:2015-04-11 21:19
  • 阅读:2866

窗口hide后再show出来无法使用关闭动画

分类:HTML5+

我这边发现当webview窗口hide()后再show()出来,关闭动画就没效果了

{{{
alert('hide');
//setTimeout('ws.close("slide-in-right", 300);', 1000);
setTimeout('ws.hide();', 2000);
setTimeout('ws.show();', 3000);
setTimeout('ws.close("slide-in-right", 300);', 4000);

}}}

先执行就有效果,后执行就没有效果了...求解答~

另外,如果窗口太多导致闪屏如何破~~~

2014-10-15 09:46 负责人:无 分享
已邀请:
wanZ

wanZ

因为CLOSE或者hide后的窗口资源被释放了,你需要重新create

  • wanZ

    或者,只show就行

    2015-03-25 21:05

  • wanZ

    embed.show("fade-in",2000);

    embed.show("fade-out“,2000);

    2015-03-25 21:05

  • wanZ

    都是show就行,不需要hide

    2015-03-25 21:05

  • wanZ

    或者,你需要重新create

    2015-03-25 21:09

wanZ

wanZ

embed.stop();//停止当前载入
embed.loadURL("http://about:blank");//指向空白页
embed.show("fade-in",4000);
embed.loadURL("http://www.suiwobian.cn");//指向自己的网页

DCloud_UNI_FXY

DCloud_UNI_FXY

close的话窗口资源会全部释放需要重新create,hide的话,是不需要create的。

能否给一个完整的可直接运行的测试工程。看看是你的处理逻辑有问题,还是有潜在的bug

Monokeros

Monokeros

我也遇到同样问题,不确定是否bug。用create方法创造了webview,使用hide()方法先隐藏起来备用。使用的时候show('fade-in', 3000)有效果,但是无论用何种方式关闭,比如hide('auto') / hide('fade-out') / hide(),等再使用show()打开的时候,窗口动画都会消失,直接打开。

但是这个情况有个例外,就是如果这个sub webview的opener()本身被hide()过,重新show()之后,这个sub webview的show()方法就可以正确执行动画。

望检查回复是否bug,谢谢!

Monokeros

Monokeros

给个实例:

    document.addEventListener('plusready', function(){  
        Store.pageInit();  
    });  
    Store = {  
        _categoryShowing : false,  
        toggleCategory : function(flag) {  
            if ( flag ) {  
                plus.webview.show(Store._WVcategory, 'fade-in', iCang.CLIENT.aniDuration);  
                Store._categoryShowing = true;  
            } else {  
                plus.webview.hide(Store._WVcategory, 'fade-out', iCang.CLIENT.aniDuration);  
                Store._categoryShowing = false;  
            }  

        },  
        pageInit : function() {  
            // WVMgr是我自己的webview管理函数组,就是用create和append方法添加sub wv.  
            this._WVindex = iCang.WVMgr.createContentWV('index_content.html');  
            this._WVcategory = iCang.WVMgr.createContentWV('index_category.html');  
            this._WVcategory.hide();  
        }  
    };

之后使用Store.toggleCategory(true/false)来控制sub webview的显示。

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