这个框架采用的是iframe方式组织主页和子页面的,所以有很多操作需要跨iframe执行,所以开放了一些接口,框架中的页面操作有以下几种:
本页面只做API接口的说明和实现的机制,具体的示例,在其他页面中展示。
在框架页上开放的接口,是跨iframe实现的,注意跨域问题。
pageInfo,是一个键值对
框架页上开放了一个对象,topManager,注意一下几点:
下面是一些打开页面的示例,都是直接调用对应的API完成的,更加方面的使用方式,在具体的页面中说明。
//进行操作时,必须判断页面是否在框架页内,
//否则报错
if(top.topManager){
//打开左侧菜单中配置过的页面
top.topManager.openPage({
id : 'main-menu',
search : 'a=123&b=456'
});
}
//打开相对地址,相对地址,必须以框架页面(main页面)为起始,不是相对于当前页面的位置
top.topManager.openPage({
id : 'test1',
href : 'main/test.html',
title : '相对地址页面'
});
//打开绝对路径,可以是同域的,也可以是外部链接
top.topManager.openPage({
id : 'baidu',
href : 'http://www.baidu.com',
title : '百度页面'
});
关闭页面一般用于3种情形:
//关闭当前页
top.topManager.closePage();
//关闭其他页面时,如果页面未打开,不进行任何操作
top.topManager.closePage('main-menu');
//打开其他页面并关闭本页,常用于成功、失败页面的跳转
top.topManager.openPage({
id : 'main-menu',
isClose : true
});
刷新页面一般用于2种情形:
一般修改标题发生在本页跳转时,跳转到的页面跟本页面标题不一致,可以:
一般我们在项目中使用第二种方式,第一种方式限于,跳转的页面自己不能控制时
//修改本页面标题
top.topManager.setPageTitle("新的标题");
//修改其他页面标题
top.topManager.setPageTitle("新的标题","main-menu");
页面操作中常见的问题如下:
还有几个未处理的问题: