我们团队最近开发一个web页面,包含一连串的功能,每个功能放在一个页面中,用一个导航条来在各个页面间导航。
为了并行开发,我们每个功能写在一个单独的html文件中,包含导航条的页面作为主页面,最后把各个功能页面的html放在iframe里面嵌入到主页面中来。
因为用iframe各个页面之间是相互隔离的,css和js代码不会互相影响,利于分开并行开发。
不知道这样有没有什么缺点,又有没有什么更好的方案,求指教。
缺点有两处:
1. 页面兼容性的问题,iframe的高度并不能自适应高度,需要js来动态定位。如果iframe里边再套一个iframe就比较麻烦,所以谨慎重套。
2. 页面数据的控制,比如iframe中操作需要反馈到主页面上来,可能多加一步的处理。还有类似弹出层的效果,需要突破iframe然后把dom节点添加到父页面,要不然实现不了全屏的遮罩。
大概想到是这些,
现在我了解的干法,分享一下:
1. 直接用ajax来添加操作页面,就是一个标签一个div,类似于这个:http://www.j-ui.com
2. 利用angularjs的路由来控制,内部其实还是ajax。只是操作起来更方便而已。
但这两个也有缺点,项目团队中需要有一个人对css,js有一定的经验,尤其是angularjs,入门需要一定的时间或基础。
所以:个人的建议,项目不大,或者后期维护不是很频繁,iframe是暂时可行的方案,如果反之,就需要其它方案。
感谢版主分享!
刚才试了一下用ajax直接加载页面到div中,这样两个页面处于同一个window对象下。命名空间会产生冲突,似乎多人同时开发不同页面不是很方便呢~
感谢版主分享!
刚才试了一下用ajax直接加载页面到div中,这样两个页面处于同一个window对象下。命名空间会产生冲突,似乎多人同时开发不同页面不是很方便呢~
iframe就是一坑货。。。
Jsoup Document doc1 = Jsoup.connect("http://www.paperyy.com/").get();
Document doc2 = Jsoup.connect("http://www.paperyy.com")
.data("query", "Java")//请求参数
.userAgent("Mozilla")//设置urer-agent
.cookie("auth", "token")//设置cookie
.timeout(50000)//设置连接超时
.post();//或者改为get
System.out.println("http://www.paperyy.com");