谷歌浏览器发送ajax请求 谷歌浏览器发送ajax请求异常
各位老铁们,大家好,今天由我来为大家分享谷歌浏览器发送ajax请求,以及谷歌浏览器发送ajax请求异常的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!
本文目录
- IE浏览器不支持AJAX是怎麽回事
- 怎样让浏览器记住ajax请求并控制浏览器前进和后退
- 如何解决chrome 等浏览器不支持本地ajax请求的问题
- 有真正的ajax并发请求吗,浏览器底层是socket实现的吗
一、IE浏览器不支持AJAX是怎麽回事
写AJAX程式,一般不同的浏览器,代码不是一样的,标准不一样,
有些语句因不同浏览器不同而不同,所以你应该选取其它的浏览器
下下的下码是是JScript中创建建个XMLHTTP对象并从服务器请求建个
XML文档。服务器器器XML文档并显示。
var xmlHttpReq= new ActiveXObject("MSXML2.XMLHTTP.3.0");
xmlHttpReq.open("GET","", false);
alert(xmlHttpReq.responseText);
是在IE的浏浏器中 new XMLHttpRequest()来创建对象器象下象:
var xmlHttpReq= new XMLHttpRequest();
xmlHttpReq.open("GET","", false);
alert(xmlHttpReq.responseText);
二、怎样让浏览器记住ajax请求并控制浏览器前进和后退
1、这次给大家带来怎样让浏览器记住ajax请求并控制浏览器前进和后退,让浏览器记住ajax请求并控制浏览器前进和后退的注意事项有哪些,下面就是实战案例,一起来看一下。
2、在我们浏览不同网页的时候,我们可以通过浏览器的前进、后退键来去到我们前后访问过的页面。这都有一个共同点,就是浏览器地址栏的地址改变了。浏览器自身维护了一个记录用户访问页面历史的栈,栈中记录了用户访问不同页面的先后顺序。
3、但是在开发中,我们经常会用到ajax技术去提升网页的用户体验。但是ajax本身并不改变浏览器地址栏中的url,是在同一个网页内部操作的,这时,浏览器并不会记录ajax请求的记录。在这种情况下,用户在一个页面触发的5次ajax请求后,点了后退按钮,浏览器不会再次请求之前的ajax请求,而是返回了上一页。
4、解决这个问题的第一种方法就是利用location的hash值。当url的hash值改变时,页面并不会跳转,但是浏览器此时会将此带hash的url记录到历史记录中。利用这个特性,我们可以人为的模拟带历史记录功能的ajax请求。下面是这种方法的demo。
5、<li data-id="1">1</li>
6、<li data-id="2">2</li>
7、</ul>先创建两个按钮,点击按钮时,向服务器发送请求,并将data-id通过参数带到服务器,服务器返回对应data-id的结果。
8、于此同时,改变按钮状态,并将location的hash值改为data-id的值。最后监听location的hash值变化,重复上述步骤。
9、 console.log("recived data:"+ hash);
10、$("li").removeClass('active');
11、$("li[data-id="+hash+"]").addClass('active');
12、 var curHash= window.location.hash.replace("#","");
13、window.onhashchange= onHashChange;
14、 var id=$(this).attr('data-id');
15、});当我们点击按“1-2-1”这样的顺序点击按钮时,控制台的输出如下
16、recived data:2此时我们连续按三次返回按钮,控制台输出如下
17、recived data:1可见这样就模拟实现了浏览器记录ajax请求的功能。
18、相信看了本文案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!
三、如何解决chrome 等浏览器不支持本地ajax请求的问题
2、dos下进入\Google\Chrome\Application>(chrome.exe所在目录)
3、运行命令 chrome.exe-- allow-file-access-from-files;
注意:运行完第3步之后,这个时候就会启动chrome浏览器,不要关闭它,使用chrome打开那个之前会报错的html文件,发现正常了,不会报错了,可是,我现在把chrome关闭,在使用chrome代码这个html文件还是会报错,这说明,这个方法只对本次打开的chrome有效,关闭再打开就无效了,为了方便,还是使用上面的那个修改快捷方式属性的方法吧!
四、有真正的ajax并发请求吗,浏览器底层是socket实现的吗
Ajax和WEB服务器交互是通过HTTP协议来进行的,说白了,Ajax实际上也是在访问一个HTTP地址。
再者,浏览器底层通信都是通过Socket来实现的,Socket只负责发送和接收数据,至于数据包结构就是不同的上层协议(如HTTP协议或者FTP协议)来自行规定的。
回到正题,你简单的理解为Ajax反正是通过HTTP协议和服务器进行信息通信的,至于是否是和服务器同时并发的,这个还的看WEB服务器以及浏览器支持的HTTP版本。
HTTP1.0版本:客户机每向服务器请求一次,都会和服务器建立一次连接,处理完毕后会断开;
HTTP1.1版本:客户机向服务器请求时,不会马上端口连接,会通过多次握手来确定同一个连接目标,说白了,就是和服务器建立一次连接,做多次通信,比如打开一个网页,网页里面有含有css文件、js文件或者图片等等,那么这些请求只会使用同一个连接,这是浏览器自己实现的。
我们看到的Ajax并发,实际上也是和服务器建立了连接,服务器根据请求的HTTP版本建立所需的连接。
好了,关于谷歌浏览器发送ajax请求和谷歌浏览器发送ajax请求异常的问题到这里结束啦,希望可以解决您的问题哈!
声明:信息资讯网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,版权归原作者东方体育日报所有。若您的权利被侵害,请联系 删除。
本文链接:http://www.gdxhedu.com/news/212176.html