UTiguanL中“#” “?” &“”号的法力

1. \

   
十年二月,twitter改版。一个明白变化,就是URL参预了”#!”符号。比如,改版前的用户主页网站为http://twitter.com/username改版后,就成为了http://twitter.com/#!/username
  那是主流网址率先次将”#”大规模用于重点U猎豹CS陆L中。那注脚井号(Hash)的法力正在被重新认识。本文依照Http沃特ch的作品,整理与井号有关的具有主要知识点。
一、#的涵义
  #代表网页中的二个职位。其右面包车型客车字符,正是该地方的标识符。比如,http://www.example.com/index.html\#print就代表网页index.html的print位置。浏览器读取这个URL后,会自动将print位置滚动至可视区域。
  为网页地点钦点标识符,有多少个艺术。1是应用锚点,比如<a
name=”print”></a>,贰是利用id属性,比如<div id=”print”>。

2、HTTP请求不包蕴#
  #是用来教导浏览器动作的,对劳动器端完全没用。所以,HTTP请求中不包涵#。
比如说,访问上面的网站,http://www.example.com/index.html#print,浏览器实际产生的呼吁是那样的:

GET /index.html HTTP/1.1
Host: www.example.com

 

三、#后的字符
  在第1个#末端现身的其余字符,都会被浏览器解读为地方标识符。那表示,这一个字符都不会被发送到服务器端。
比如,下边U奥迪Q5L的本意是点名3个颜色值:http://www.example.com/?color=#fff,可是,浏览器实际爆发的呼吁是:

GET /?color= HTTP/1.1
Host: www.example.com

   

四、改变#不触发网页重载
  单单改变#后的有的,浏览器只会滚动到对应岗位,不会重新加载网页。
比如,从http://www.example.com/index.html\#location1改成http://www.example.com/index.html\#location2,浏览器不会重新向服务器请求index.html。

 

五、改变#会转移浏览器的访问历史
  每便变动#后的片段,都会在浏览器的访问历史中加进2个记下,使用”后退”按钮,就能够回去上多少个岗位。这对于ajax应用程序尤其有用,能够用差异的#值,表示差别的拜访状态,然后向用户给出能够访问某些状态的链接。值得注意的是,上述规则对IE
陆和IE 七不树立,它们不会因为#的改动而充实历史记录。
  

六、window.location.hash读取#值
  window.location.hash那性情情可读可写。读取时,能够用来判定网页状态是还是不是变动;写入时,则会在不重载网页的前提下,成立一条访问历史记录。
  

七、onhashchange事件
  那是三个HTML
伍新增的事件,当#值产生变化时,就会接触那些事件。IE八+、Firefox
叁.陆+、Chrome 5+、Safari 4.0+帮助该事件。
  它的行使方式有二种:

  • window.onhashchange = func;
  • <body onhashchange=”func();”>
  • window.addEventListener(“hashchange”, func, false);

  对于不帮助onhashchange的浏览器,能够用setInterval监察和控制location.hash的变型。

八、Google抓取#的机制
  私下认可情形下,谷歌的网络蜘蛛忽视URL的#部分。
  然而,谷歌还明显,假使你希望Ajax生成的内容被浏览引擎读取,那么U奥迪Q伍L中得以应用”#!”,谷歌会自动将其后边的始末转成查询字符串_escaped_fragment_的值。
  比如,谷歌(Google)发现新版twitter的UENVISIONL:http://twitter.com/#!/username
  就会活动抓取另一个U猎豹CS6L:http://twitter.com/?_escaped_fragment_=/username
  通过那种体制,谷歌就足以索引动态的Ajax内容。

 

AJAX =
异步 JavaScriptXML标准通用标记语言的子集)。AJAX 是1种用于创建飞快动态网页的技巧。

回到顶部

2. ?

1)连接作用:比如

http://www.xxx.com/Show.asp?id=77&nameid=2905210001&page=1

二)清除缓存:比如

http://www.xxxxx.com/index.html 
http://www.xxxxx.com/index.html?test123123

八个url打开的页面壹样,但是前面那个有问号,表明不调用缓存的剧情,而以为是2个新鸿基土地资金财产方,重新读取。

归来顶部

3. &

不等参数的间隔符

相关文章