JS实现页面跳转 浏览器地址栏保持不变

JS实现页面跳转 浏览器地址栏保持不变


在公司内部框架中,发现点击超链接,页面发生跳转,而浏览器地址栏URL始终保持不变。分析其实现机制,响应A标签onclick事件,通过Ajax向服务器端发送http请求,然后將服务器返回数据写到当前document对象。

实现代码如下:


//IE浏览器创建XmlHttpRequest对象
var xmlhttp = new ActiveXObject("MSXML2.XMLHTTP.3.0");
function openBaidu()
{

    xmlhttp.open("post","http://www.baidu.com",false);
    xmlhttp.onreadystatechange= HandleStateChange;
    xmlhttp.send();
    function HandleStateChange()
    {
      if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
      {
          document.write(xmlhttp.responseText);
      }
    }
}
<a href="###" onclick="openBaidu()">百度</a>

注意:此种做法不利于搜索引擎优化,多用于内网系统以及对安全性要求较高的银行系统中。

posted on 2015-04-07 12:31  岚之山  阅读(3708)  评论(0编辑  收藏  举报

导航