随着 Web2.0 的兴起,Ajax 满天飞,很多网站都为了追求新技术,设计出支持 Ajax 的页面。但是 Ajax 的唯一缺点是需要系统内置 XMLHttpRequest 组件才可以进行操作,同时不少人反感提交的时候没有进度条显示,同时设计方法复杂。因此 Ajax 工具出了很多来简化设计的方法。
与此同时,出现了不用组件的 Ajax 技术,实际上用了动态 script 的方式实现的。只能说是另一种老技术新包装的表现,已经和 Ajax 的本意是两个概念了。
再此,同样是老的不能再老的技术 MTIR 出现了。要问我我为什么要这么说,因为此技术本是 IFRAME 为技术内核的,而这在 Ajax 诞生之前是广为使用的一种方法。但是在 MTIR 中,把此技术进行了巧妙的封装,让设计者完全处于一种没有 IFRAME 的状态下即可设计出实时变化的页面。 方法极其简单,首先你需要在显示动态内容的区域用 标记上,如下:
用 _frame 附加的属性标记此处为 MTIR 所用的显示区域。 然后,在通常的链接设计中加上 _target 属性标记跳转目的区域即可,如下:
列表内容
list.php 的内容会直接显示在 main_frame 的区域中。为了考虑到与 Firefox 的兼容,最好在 标记中加上事件 οnclick="return false" 防止它产生标准的 A 跳转。
对于表单的处理也是同样,只需在表单中同样标记 _target="main_frame" 即可把表单内容提交到指定的区域中,如下:
同时,针对已标记为 _frame 属性的 来说,系统给其附加了 location 函数,可以直接用脚本控制他显示指定文件的内容,如下:
main_frame.location('list.php')
如果用户需要在页面 onload 时即在 MTIR 区域显示指定的页面内容,用户可以定义一个 frame_init() 函数,把 location() 的调用写在其中。
只要你定义了多个 MTIR 显示区域,不同区域的打开是可以同时进行的。因此实现了网页的多线程页面开启。