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); } }}
百度
注意:此种做法不利于搜索引擎优化,多用于内网系统以及对安全性要求较高的银行系统中。