关于Ajax在浏览器中产生前进后退的实现方法

转载 (原文地址) Wesley 随笔 前端开发 1.7k阅读 2011-03-05 10:36:37 举报
<DIV>
<P sizset="13" sizcache="4">关于Ajax在使用中要使<STRONG>浏览器</STRONG>产生前进后退的方法,网上比较多的方法有两种:一是采用<STRONG>hash值</STRONG>的方式,这是我们在地图preview版中使用的方法(采用jQuery的history插件);二是使用iframe的方法,目前百度地图、Google地图采用。为使我们以后的mymap方便引用到博客等网页内容中去,并且给地图添加复制链接的方法,我们决定把地图中Ajax在浏览器产生前进后退的方法改变为<STRONG>iframe</STRONG>的方法。</P>
实现的机制
<P>主要使用的两个html:index.html,history.html(iframe&nbsp;src地址)。<BR>主要代码参考index.html以及history.html的js部分:</P>
现在说说实现的方式
<P>Index.html中代码解释:<BR>wHistory.init();<BR>给body插入iframe跟一个表单(主要用于Safari浏览器、或者其他特殊使用,比如复制地址方面,直接取值input的value即可,不需要处理,而取iframe的src还要进行字符串的处理)</P>
<P>判断是否为Safari浏览器,如果是则特殊处理一下,根据不同的<STRONG>浏览器</STRONG>定义main函数</P>
<P>Callback函数处理返回的信息。<BR><SPAN id=more-311></SPAN>
<DIV .=post-top-ad>
<DIV .=gg>
google_ad_client = "ca-pub-7800528786392833"; google_ad_slot = "7424246437"; google_ad_width = 336; google_ad_height = 280; google_protectAndRun("render_ads.js::google_render_ad", google_handleError, google_render_ad);
</DIV>
<DIV .=gg>History.html中代码解释</DIV></DIV>
<P>对框架中的src进行处理,运行父窗口中的函数wHistory.callback();<SPAN .="BACKGROUND-COLOR: #ffffff"> </SPAN></P>
<P>测试中使用的浏览器:IE6+&nbsp;,FF,&nbsp;Opera10&nbsp;,Safari4,chrome欢迎大家测试其他版本的浏览器,1946bv1946伟德备用地址问题及时提出</P></DIV>
评论 ( 0 )
最新评论
暂无评论
赶紧努力消灭 0 回复