<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    TWaver - 專注UI技術

    http://twaver.servasoft.com/
    posts - 171, comments - 191, trackbacks - 0, articles - 2
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    有好多同學問當瀏覽器關閉時, Flex如何能得到通知, 提醒用戶保存數據. 這是個很普遍的問題, 下面就演示一下如何做.

    Flex無法知道瀏覽器何時關閉, 但javascript可以(window.onbeforeunload), 所以思路就是:
    1. Flex提供方法, 能讓javascript調用, 以便在瀏覽器關閉時, 判斷是否有數據需要保存, 如果有, 就提示, 沒有就啥都不干<?xml version="1.0" encoding="utf-8"?>

    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="horizontal"
                    xmlns:tw
    ="http://www.servasoftware.com/2009/twaver/flex"
                    creationComplete
    ="init();" paddingBottom="0" paddingLeft="0" paddingRight="0" paddingTop="0">
        
    <mx:Script>
            
    <![CDATA[
                
    import mx.controls.Alert;

                
    import twaver.*;
                
    import twaver.network.interaction.InteractionEvent;

                
    private var box:ElementBox = new ElementBox();

                
    private function init():void {
                    
    this.initBox();
                    
    // Add callback, javascript use it to check whether popup message when browser is closing
                    ExternalInterface.addCallback("needSave", needSave);
                    
    // Enable save location button once location changed
                    network.addInteractionListener(function(e:InteractionEvent):void {
                        
    if(InteractionEvent.LAZY_MOVE_END == e.kind
                                
    || InteractionEvent.LIVE_MOVE_END == e.kind) {
                            
    if(!btnSave.enabled){
                                btnSave.enabled 
    = true;
                            }
                        }
                    });
                }

                
    private function initBox():void {
                    var from:Node 
    = new Node();
                    from.name 
    = "From";
                    from.location 
    = new Point(100200);
                    box.add(from);

                    var to:Node 
    = new Node();
                    to.name 
    = "To";
                    to.location 
    = new Point(400500);
                    box.add(to);

                    box.add(
    new Link(from, to));
                    
    this.network.elementBox = box;
                }

                
    private function save():void {
                    saveData();
                    btnSave.enabled 
    = false;
                }

                
    private function saveData():void {
                    Alert.show(
    "Data saved");
                }

                
    public function needSave():Boolean {
                    
    return btnSave.enabled;
                }
            ]]
    >
        
    </mx:Script>
        
    <mx:VBox width="100%" height="100%">
            
    <mx:HBox width="100%">
                
    <mx:Button id="btnSave" label="Save Location" click="save()" enabled="false"/>
            
    </mx:HBox>
            
    <tw:Network id="network" width="100%" height="100%"/>
        
    </mx:VBox>
    </mx:Application>

     

     2. html頁面添加window.onbeforeunload事件, 判斷如果Flex有內容要保存, 就彈出提示:
    <script>
        window.onbeforeunload = function (evt) {
            var demo = document.demo || window.demo;
            if (demo.needSave()) {
                var message = 'You did not save your data. Do you really want to quit?';
                if (!evt) {
                    evt = window.event;
                }
                if (evt) {
                    evt.returnValue = message;
                }
                return message;
            }
        }
    </script>
    完整代碼見附件:TestWindowClose

    評論

    # re: 瀏覽器關閉時, 如何提醒用戶保存Flex上的拓撲數據  回復  更多評論   

    2012-03-01 09:17 by 彈弓
    樓主不是用的360瀏覽器吧

    # re: 瀏覽器關閉時, 如何提醒用戶保存Flex上的拓撲數據  回復  更多評論   

    2012-03-01 09:51 by 我是看評論的
    樓上的, 我笑了, 明明是safari, 怎么成360了

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲成在人线电影天堂色| 亚洲乱码一区二区三区国产精品| 亚洲人色婷婷成人网站在线观看 | 亚洲一区二区三区深夜天堂| 久久亚洲色WWW成人欧美| 中文无码日韩欧免费视频| 亚洲日韩人妻第一页| 精品无码一级毛片免费视频观看| 亚洲视频在线免费看| 国产在线观看免费完整版中文版| 亚洲精选在线观看| 免费一级毛片在线播放放视频| 免费欧洲毛片A级视频无风险| 国产亚洲综合视频| 免费看美女裸露无档网站| 亚洲国产精品嫩草影院在线观看| 亚洲精品V天堂中文字幕| 又大又硬又爽又粗又快的视频免费| 亚洲视频在线观看免费视频| 日韩不卡免费视频| 男男黄GAY片免费网站WWW| 国产精品亚洲产品一区二区三区 | 久久精品国产亚洲5555| a级毛片高清免费视频就| 伊人久久综在合线亚洲2019| 亚洲三级高清免费| 免费在线观看一区| 亚洲AV日韩精品久久久久| caoporn成人免费公开| 免费一级国产生活片| 巨胸喷奶水www永久免费| 亚洲理论片在线观看| 日批日出水久久亚洲精品tv| 亚洲av无码专区在线| 亚洲一区精品伊人久久伊人| 精品熟女少妇a∨免费久久| 中文字幕在线观看亚洲视频| 精品国产香蕉伊思人在线在线亚洲一区二区| 亚洲免费人成在线视频观看| 77777午夜亚洲| 亚洲区小说区图片区QVOD|