jQuery MiniUI

 找回密码
 立即注册
查看: 3586|回复: 4
打印 上一主题 下一主题

destroy 在mini.open 和 mini.Window [复制链接]

Rank: 2

跳转到指定楼层
楼主
发表于 2013-6-25 17:34:34 |只看该作者 |倒序浏览
今天在对比 mini.open 和 mini.Window时发现
ondestroy 的出发效果不一样
用.destroy() 对对象进行销毁时 的效果不一样
对于window 有 销毁前出发事件么?
还是说这个是一个BUG

mini.open({
        url:"123.aspx",
        title: "测试",
        width:600,
        height:240,
        ondestroy: function (res) {  //弹出页面销毁前
                if (res == "ok") {
                    var iframe = this.getIFrameEl();
                    var data = iframe.contentWindow.GetData();
                    data = mini.clone(data);    //必须
                    mini.get("txtXQTD").setValue(data);
                }
            }                        
    })
    var WinQX = new mini.Window();
    WinQX.set({
        title: "测试",
        url: "123.aspx",
        width: 600,
        height: 240,
        closeAction: "destroy",
        ondestroy: function () {  //弹出页面销毁后
                var iframe = this.getIFrameEl(); //对像被销毁,所以获取不到
                var data = iframe.contentWindow.GetData();
                data = mini.clone(data);    //必须
                mini.get("txtXQTD").setValue(data);
        }
    });

Rank: 8Rank: 8

沙发
发表于 2013-6-26 09:26:00 |只看该作者
window内部没有iframe,所以你找不到,跟mini.open不一样,window加载的内容一般都是固定写在上面的,mini.open加载的是一个页面,所以有iframe

Rank: 2

板凳
发表于 2013-6-26 09:34:18 |只看该作者
factory 发表于 2013-6-26 09:26
window内部没有iframe,所以你找不到,跟mini.open不一样,window加载的内容一般都是固定写在上面的,mini. ...

但是对于设置加载页面的时候都会有iframe这个对象呢.
你的意思是不管什么时候  window 的 getIFrameEl() 一直是空的么?

Rank: 8Rank: 8

地板
发表于 2013-6-26 10:21:27 |只看该作者
双鱼达摩 发表于 2013-6-26 09:34
但是对于设置加载页面的时候都会有iframe这个对象呢.
你的意思是不管什么时候  window 的 getIFrameEl()  ...

看你怎么写法,如果是直接在window的div里面写东西,那么肯定是没有iframe的
如果是这样的,http://www.miniui.com/demo/#src=panel/load.html

给个url的方式,那么是有iframe的。

window从panel派生,参考上面这个demo就可以了

Rank: 1

5#
发表于 2013-6-26 17:18:20 |只看该作者
本帖最后由 卜卜萝 于 2013-6-26 17:21 编辑
  1. WinQX.set({
  2.         title: "测试",
  3.         url: "123.aspx",
  4.         width: 600,
  5.         height: 240,
  6.         closeAction: "destroy",
  7.         onload: function () {       //弹出页面加载完成
  8.             var iframe = this.getIFrameEl();//获取正常!
  9.         }
  10.         ondestroy: function () {  //弹出页面销毁后
  11.             alert("123");//窗体关闭后才弹出提醒框!
  12.             var iframe = this.getIFrameEl(); //对像被销毁,所以获取不到
  13.         }
  14.     });
复制代码

mini-window 的 destroy 事件确实是销毁后才触发!

Archiver|普加软件

GMT+8, 2024-11-28 22:49 , Processed in 1.032888 second(s), 9 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部