??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲综合AV在线在线播放,日本亚洲欧美色视频在线播放,亚洲妇女水蜜桃av网网站http://www.tkk7.com/lvq810/category/31961.html世间最可贵的就是“今”,最易失得也是“今”。因为它最Ҏ丧失Q所以更觉得它宝c?/description>zh-cnSat, 20 Feb 2010 13:11:40 GMTSat, 20 Feb 2010 13:11:40 GMT60[转蝲]有关 JavaScript ?10 件让解的事情http://www.tkk7.com/lvq810/articles/313020.htmllvq810lvq810Sun, 14 Feb 2010 14:29:00 GMThttp://www.tkk7.com/lvq810/articles/313020.htmlhttp://www.tkk7.com/lvq810/comments/313020.htmlhttp://www.tkk7.com/lvq810/articles/313020.html#Feedback0http://www.tkk7.com/lvq810/comments/commentRss/313020.htmlhttp://www.tkk7.com/lvq810/services/trackbacks/313020.html1. 它以 Java 命名Q但q不?Java
它最初叫 MochaQ?接着改名?LiveScriptQ最后才定命名?JavaScriptQ根据历史记录,Java 的命名与 Netscape ?Sun 之间的合作有养I作ؓ交换条gQNetscape 在他们备受欢q的览器中创徏?Java q行时。值得一提的是,q个名字的出台几q一个玩W,要知道,LiveScript ?Java 在客L脚本斚w存在敌对关系?br />
不管怎么_Z后来不得不一再澄清的一件事是QJavaScript ?Java 毫无关系?br /> 2. Null 是个对象Q?
看看q段代码Q它q回的是 object?br />


q实在o解,假如 null 表示I|它怎么可以是对象?单说Q它?JavaScript 最初版本的错误Q这个错误甚臌微Y? JScript 直接借用?br /> 3. NaN !== NaN
NaNQ表CZ个非数字的|然而问题是QNaN不等于Q何东西,甚至不等于它自己?br />


q显然不对,事实上,如果要判断一个值确实是 NaNQ你需要用 isNaN() 函数?br /> 4. 全局变量
对全局变量的依赖一直被视ؓ JavaScript 最坏的部分QECMA ?JavaScript 5 已经L了全局变量Q请参阅 ECMA 推出 JavaScript 5 - 译者注Q。对单的面Q这无所谓,但复杂的面Q如果包含大?JavaScript 脚本Q你很难知道某个全局变量是在哪里声明的,如果几个全局变量不小心重名,׃引发错误?br /> 5. 那些l统被探ؓ Mozilla User-Agent 的浏览器
必须承认Q事实上Q这不是 JavaScript 的错Q是各个览器有意ؓ之。比如,以下是用 JavaScript 探测 Safari 时得到的l果Q?br />


是否注意到其中的W一个单?Mozilla/5.0Qؓ什?Safari 会被探测?MozillaQ尽? Safari 后来已经U正q一问题Q但仍然不能解释Z么它们要q样误导开发者。事实上Q你会发玎ͼl大多数览器把他们?User Agent 讄?MozillaQ答案要回到10q前Q这更多是一U策略?br />
User Agent 是一D는来标识当前浏览器w䆾的字W串Q世界上W一个浏览器 MosaicQ?曾这h志自己:



q很合理Q因此当 Netscape 出来的时候,它保留了 Mosaic q个传统Q还在后面添加了一个加密方式部分?br />


到目前ؓ止,一切安好,直到 IE3 发布Q当 IE3 发布的时候,Netscape 正如日中天,那时Q很多服务器和程序已l部|了客户端探机Ӟ以便认出 NetscapeQ虽然现在看来,q很值得争议Q但当时q没什么。当 IE 初次推出它们?User Agent 标志的时候,是这个样子:





q让 IE 很被动,因ؓ Netscape 已经能被很多服务器识别,因此Q开发者们q脆希望 IE 被误认ؓ MozillaQ然后,再单独加一? IE 的标{?br />


如今Q几乎所有浏览器都步 IE 后尘Q将自己标识?MozillaQ这大概是一U连锁反应?br /> 6. 不一致的函数范围
参看以下代码Q?br />


foo(bar.method) q回l果不同原因是,method 函数是被当作 windows 对象Q而不?bar 下的对象调用的。要解决q个问题Q我们必M传递的匿名函数中调?bar.method() ?br /> 7. 位操作符
JavaScript ?Java 有不共同之处,如位操作?br />

  • & - and
  • | - or
  • ^ - xor
  • ~ - not
  • >> - signed right shift
  • ??? - unsigned right shift
  • << - left shift

看看W一?& 操作W,使用 && 应该更有效,因ؓ JavaScript ?Java 不一PJavaScript 没有整数Q需要来回{换,因此Q{换操作花的时间更ѝ?br /> 8. 太多的空值类?
诸如 null, false, undefined 一cȝ值几乎表C同L意思,它们之间的不同又让h很迷惑?br /> 9. 术问题
虽然 JavaScript 包含很多术操作Q但你不妨运行一下下面的式Q?.2+.4" 应该{于 ".6" 是不是,然而返回的是 "0.6000000000000001"。JavaScript 在小数计访问存在一些小问题?br />
Math

Z么会q样Q简单说Q因?JavaScript 使用 IEEE 标准q行二进制Q点运,不过Q对整数计算是没问题的?br /> 10. 莫名其妙的代码错?
看看以下两段代码Q?br />


它们应该是一LQ只?{ 位置不同而已Q是吧。然而我们再看下面的代码Q?br />


如果我们把其中的



换成



׃引发错误Q这是因?JavaScript 有一个功能,会纠正它认ؓ错误的代码书写,它会自作聪明地在 return q个词后面插入一?";" Q错误因此而生?br />


本文来源Q?a >http://net.tutsplus.com/tutorials/javascript-ajax/top-10-things-that-javascript-got-wrong/

lvq810 2010-02-14 22:29 发表评论
]]>
[转]HTML 5 预览http://www.tkk7.com/lvq810/articles/285044.htmllvq810lvq810Wed, 01 Jul 2009 16:07:00 GMThttp://www.tkk7.com/lvq810/articles/285044.html原文Q?a title="http://www.alistapart.com/articles/previewofhtml5" >http://www.alistapart.com/articles/previewofhtml5
作者:Lachlan Hunt
译者:zhaozy in 3user.com

概要

|络是不断的q化? 新的和有创意的网站每天都在出? 从各斚w都在冲击着HTML的边? HTML 4来到我们w边已经差不多有10q了, 发行者们不断的寻求提供更强大的功能的新技? 但是怼因ؓ标记语言和浏览器的约束而\途坎?

Zl作者们提供更灵z? 更具互操作? 能有更多交互性ƈ令h振奋的网站和应用E序, HTML 5 引入q加Z一pd功能, 包括表单控制, 应用E序接口(APIs), 多媒? l构化和语义?

HTML 5的工? 开始于2004q? ?W3C HTML WG ?WHATWG 的共同努力下现在正在全面贯彻落实. 很多关键角色参与了W3C的努? 最具代表性的?大浏览器厂商: Apple, Mozilla, Opera, Microsoft; q有一pd的有着不同利益和专业技术的其他机构以及个h.

~写详细规范的工作还在进行中, d成还有很长的路要? 同样? 在这文章中讨论的功能不排除在未来有所改动的可? q篇文章只是以大U的形式介绍一些在当前的草案中的主要的Ҏ?

l构

HTML 5 引入了一整套全新的元素来让构建页面变得更加简? 大多数基于HTML 4的页面的包含多种常用l构, 比如说页?header), 脚(footer)和纵?column). 现阶D|们通常会用div元素标记q些区块, 然后为它们定义一个描q性的id或是class.

图表说明一个典型的用div元素带上id和class属性标记的2栏布局. 其中包括首(header)和页?footer), 在页首下面是一个水q_航条, M内容又包含了文章(article)和它双的侧Ҏ(sidebar).

大量的用div元素是因为目前的HTML 4版本~少更明的语义描述q些区块所? HTML 5 Z表现q些不同的区块而引入了新的元素.

那些div元素可以被新的元素代替了: header, nav, section, article, aside以及footer.

<body>
  
<header></header>
  
<nav></nav>
  
<article>
   
<section>
   
   
</section>
  
</article>
  
<aside></aside>
  
<footer></footer>
</body>

用这些新元素会有一些优?相对于HTML 4). 当和标题元素(h1 - h6)一同用时, 可以标记出嵌套的章节标题层次, 越之前版本的HTML仅有的六个层? 规范中包含了一份生成大U的详细法. 把结构化q些内容U_考虑范围, q仍旧向后兼容先前的版本. q样可以在编辑工具以及浏览器中生成目录来帮助用户来浏览这个文?

举例说明, 下面的标记结构用了嵌套的章节和h1元素构成:

<section>
  
<h1>Level 1</h1>
  
<section>
   
<h1>Level 2</h1>
   
<section>
    
<h1>Level 3</h1>
   
</section>
  
</section>
</section>

q里要注? Z更好的兼容现在的览? 它也能在适当的位|利用其它的标题元素(h2 - h6)来代替h1元素.

通过辨别面中的章节使用Ҏ章节元素的确切目? 辅助的技术能帮助用户更容易的览q个面. 举例, 他们能不费力的略q导航区块或者能快速的从一文章直接蟩C一而不需要作者提供蟩转链? 对于创作者来? 在文档中L多余的div, 而用一些更明显的元素代替它? 会让源代码更清楚而且更容易书?

header元素表示一个区块的头部, "头部" 可能包含不只是区块的标题, 比如头部包含了副标题, 历史版本信息或是|名都是合理?

<header>
  
<h1>A Preview of HTML 5</h1>
  
<class="byline">By Lachlan Hunt</p>
</header>
<header>
  
<h1>Example Blog</h1>
  
<h2>Insert tag line here.</h2>
</header>

footer元素表示用上它的那个区块的脚? 一个具代表性的 "脚部" 包括了这个区块的一些信? 比如谁写了它, 链接到相关的文档, 版权信息{等.

<footer>&copy; 2007 Example Inc.</footer>

nav元素表示一个导航链接的区块. 它同旉用于站点导航和目录.

<nav>
  
<ul>
   
<li><href="/">Home</a></li>
   
<li><href="/products">Products</a></li>
   
<li><href="/services">Services</a></li>
   
<li><href="/about">About</a></li>
  
</ul>
</nav>

aside元素Z存放和主要内Ҏ有太大关pȝ内容, 是典型的标记提要内容Ҏ.

<aside>
  
<h1>Archives</h1>
  
<ul>
   
<li><href="/2007/09/">September 2007</a></li>
   
<li><href="/2007/08/">August 2007</a></li>
   
<li><href="/2007/07/">July 2007</a></li>
  
</ul>
</aside>

section元素表示了一份文档或是一个应用程序一般意义上的区? 比方说章?

<section>
  
<h1>Chapter 1: The Period</h1>
  
<p>It was the best of times, it was the worst of times,
  it was the age of wisdom, it was the age of foolishness,
  it was the epoch of belief, it was the epoch of incredulity,
  it was the season of Light, it was the season of Darkness,
  
</p>
</section>
(引用?/span><A Tale of Two Cites>)

article元素表示一份文? 站点的页面中独立的区? 它适用于类似新? blog文章, 论坛帖子或者个人注释这L内容.

<article id="comment-2">
  
<header>
   
<h4>
    
<href="#comment-2" rel="bookmark">Comment #2</a>
    by 
<href="http://example.com/">Jack O'Niell</a>
   
</h4>
   
<p><time datetime="2007-08-29T13:58Z">August 29th, 2007 at 13:58</time></p>
  
</header>
  
<p>That's another great article!</p>
</article>

视频和音?/strong>

在最q几q? |络上的视频和音频日益增? 像是youtube, Viddler, Revver, MySpace, q有其他很多可以让Q何一个h更容易的发布视频和音频的|站. 然? 因ؓ当前的HTML~少必要的方法顺利的插入q控制多媒体, 很多|站都依赖Flash来提供这L功能. 管可能可以用各U各L插g (像是QuickTime, Windows Media{等) 嵌入多媒? 但是Flash是当前唯一被广泛应用的, 提供了开发者们所渴望的跨览器兼容解x案的插g.

对于各种ZFlash的媒体播攑֙, 创作者们Ҏ供他们自q用户定制设计的界? 那一般都允许用户控制播放, 暂停, 停止, 查找或调整音? 为浏览器提供插入视频和音频ƈ提供DOM接口让Script控制播放的功能要通过安装本地E序支持.

视频和音频的新元素让q个工作变得更加? q两者之间的大部分API都是׃n? 唯一区别关pd可视和不可视媒体之间的固有区?

Opera和Webkit已经攑և了一个部分支持视频元素的版本, 你可以到 experimental build of Opera ( http://dev.opera.com/articles/view/a-call-for-video-on-the-web-opera-vid/ ) 或者最新的 nightly build of WebKit ( http://nightly.webkit.org/ ) M载ƈ试验一下这些示? Opera支持Ogg Theora, Webkit支持所有QuickTime支持的媒体格? 包括W三方的解码?

插入视频最单的Ҏ是用video元素, 它会允许览器提供一个默认的用户界面, 其中controls属性是一个boolean值属? q个属性是让创作者决定用L面是否要昄(默认是不昄).

<video src="video.ogv" controls poster="poster.jpg" width="320" height="240">
  
<href="video.ogv">Download movie</a>
</video>

可选择的poster属性可以指定在视频播放前用来显C的囑փ. 管有一些视频格式有它们Ҏ的预览图格式, 像是MPEG-4, 它提供了一个可以不依赖于视频格式的可选择Ҏ.

用audio元素在页面内插入音频文g也非常容? audio和video元素的大部分属性都是共用的, 但非常显而易见的, audio元素没有width, height以及poster属?

<audio src="music.oga" controls>
  
<href="music.oga">Download song</a>
</audio>

HMTL 5 提供了source 元素, 让浏览器Ҏ媒体cd或编码器的支持来指定视频或音频文? media属性会Ҏ讑֤的局限性和被指定的媒体的类型和~码器来指定一个媒体选择查询.  当在使用 source 元素? 上元素( video或audio )的src属性需要省略掉, 不然 source 元素中的src属性会被忽略掉.

<video poster="poster.jpg">
  
<source src="video.3gp" type="video/3gpp" media="handheld">
  
<source src="video.ogv" type="video/ogg; codecs=theora, vorbis">
  
<source src="video.mp4" type="video/mp4">
</video>
<audio>
  
<source src="music.oga" type="audio/ogg">
  
<source src="music.mp3" type="audio/mpeg">
</audio>

Z那些需要给用户界面更多一Ҏ制来W合面的总设计的创作者以方便, q泛的API提供了一些方法和事g让scripts来控制媒体文? 最单的Ҏ是?play(), pause(), 然后可以通过讄 currentTime 来进行@? 接下ȝ例子会解释怎么?

<video src="video.ogg" id="video"></video>
<script>
var video = document.getElementById("video");
</script>
<button type="button" onclick="video.play();">Play</button>
<button type="button" onclick="video.pause();">Pause</button>
<button type="button" onclick="video.currentTime = 0;"><< Rewind</button>

q有很多q里没有讨论到的属性以及API可以被用到视频音频元? 如果想知道更? 你可以参?current draft specification (http://www.whatwg.org/specs/web-apps/current-work/multipage/section-video.html#video).

文档l承?/strong>

不像先前版本?HTML ?XHTMLҎ它们的语法来定义, HTML 5 是根据文档对象模?DOM)来定义的 - 览器中用来描述文档的的l承型树l构. 例如, 构成一个由 名称(title), 标题(heading) 和段?paragraph) 的文? 那么, q个DOM 树可能看h是这L:

q个DOM树包? head中的title元素, body中的h1和p元素.

ҎDOM定义的HTML 5的优Ҏq种语言可以不依赖于它自q语法. 有两个主要的语法用来表现HTML文档: HTML的序列和XML的序?.

HTML 序列从HTMLE早版本的SGML语法中得到灵感而引入的一U语? 但是却定义成更适合览器在真实环境下处理HTML的方?

<!DOCTYPE html>
<html>
<head>
<title>An HTML Document</title>
</head>
<body>
  
<h1>Example</h1>
  
<p>This is an example HTML document.
</body>
</html>

你会注意? q看h很像是前个版本的HTML, 有些标签会自动闭?

XML 序列引入了XML 1.0的语法和命名I间, 像?XHTML 1.0.

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  
<title>An HTML Document</title>
</head>
<body>  
  
<h1>Example</h1> 
  
<p>This is an example HTML document.</p>
</body>
</html>

除了间隔和xmls属? q两个例子几乎是相同?

览器通过使用MIMEcd来区别两? Mtext/html形式的文档必ȝ?HTML 序列, MMIMEcd是XML的文?像是 application/xhtml+xml 必须W合XML 序列.

创作者可能要Ҏ需要哪些功能来军_使用哪种序列. 没有使用它们的强制性的条g, 他们在不同情形下都可能是最优方?

用HTML的好?/strong>

    * 向后兼容现有的浏览器
    * 创作者已l非常熟悉语?br />     * 宽容和仁慈的语法, 不会因为无意中的一个错误而对M对用h不友好的 "Yellow Screen of Death".
    * 语法相当Ҏ记忆, 举例? 创作者可以省略掉一些标{或是属性?

用XHTML的好?/strong>

    * 严格的XML语法鼓励创作者书写完整的标签, 有些用户会发现这hҎl护.
    * 能直接的和其它XML词表l合, 比如 SVG ?MathML.
    * 允许使用XML的处理过E? 有些创作者把q个q程作ؓ他们~辑和发布过E的一部分.

如何贡献

HTML 5的工作进展很? 但是׃要出C测试用例ƈ实现互操作? 它预期还会持l数q? 目前要完成的工作可能?0?5q的旉. 在这个过E中, 从各式各L人都会有反馈, 在他们中? web设计师和开发? CMS和编辑工L厂商和浏览器的厂商是保成功的关? M人都不只是欢q? 更积极的是鼓׃ؓHTML 5提供反馈.

除了规范之外, q有更多相关的努力来帮助Z更好地理解这个工?

The Differences from HTML 4 (http://www.w3.org/html/wg/html5/diff/) 描述了和前一版本的HTML的不?
The HTML Design Principles (http://www.w3.org/TR/html-design-principles/) 讨论一些原理来帮助作出军_, q也会帮助你了解在众多的设计l果背后的原?
The Web Developer’s Guide to HTML 5 (http://dev.w3.org/html5/html-author/) q是最q才开始做? q是Z帮助web设计师和开发者理解要书写W合规范的HTML 5的文档所需要知道的一? q且提供了指? 也提供了描述得相当完整的试验.

你可以在很多的方面做A? 你可以加?W3C’s HTML WG , 订阅和A?HTML WG邮g列表, 或者完善它(wiki). 你也可以订阅或A献其他的 WHATWG邮g列表, 在WHATWG 论坛发表文章, 在WHATWG 博客上留a或写文章.



lvq810 2009-07-02 00:07 发表评论
]]>
[转]来自Google的密码强度Javascript验证代码http://www.tkk7.com/lvq810/articles/247361.htmllvq810lvq810Fri, 19 Dec 2008 08:46:00 GMThttp://www.tkk7.com/lvq810/articles/247361.htmlhttp://www.tkk7.com/lvq810/comments/247361.htmlhttp://www.tkk7.com/lvq810/articles/247361.html#Feedback0http://www.tkk7.com/lvq810/comments/commentRss/247361.htmlhttp://www.tkk7.com/lvq810/services/trackbacks/247361.html <script type="text/javascript">  var agt = nav...  阅读全文

lvq810 2008-12-19 16:46 发表评论
]]>
囄qȝ片切换特?/title><link>http://www.tkk7.com/lvq810/articles/212679.html</link><dc:creator>lvq810</dc:creator><author>lvq810</author><pubDate>Fri, 04 Jul 2008 12:41:00 GMT</pubDate><guid>http://www.tkk7.com/lvq810/articles/212679.html</guid><wfw:comment>http://www.tkk7.com/lvq810/comments/212679.html</wfw:comment><comments>http://www.tkk7.com/lvq810/articles/212679.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/lvq810/comments/commentRss/212679.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/lvq810/services/trackbacks/212679.html</trackback:ping><description><![CDATA[<div class="uomme44" id="BlogArticleDetail" style="font-size: 14px;"> <p>现在各大门户|站的新闅R?/p> <p>游戏、体肌ӀYg{页面都有一个类似Flash播放器的动态图片切换效果,</p> <p>是一张张的焦Ҏd图不断切换,囄下面的文字也随着囄的切换而变化,</p> <p>而且我们q可以手动点d片下面的“1???”{手动切换,效果相当不错Q让面时生色?<br /> <br /> 例如Q?a target="_blank"><u><font color="#0000ff">http://games.sina.com.cn/</font></u></a> 新浪游戏频道 <br /> <a target="_blank"><u><font color="#0000ff">http://sports.sohu.com/</font></u></a> 搜狐体育频道 <br /> <a target="_blank"><u><font color="#0000ff">http://www.yesky.com/</font></u></a> 天极|首?<br /> <br /> l心的朋友可能发玎ͼ当我们在q个囄上面单击右键的时候就会发C是一个Flash格式Q?/p> <p>很多朋友以ؓ他真是一个FlashQ其实它是一个javascript+XML的特效,</p> <p>外加一个Flash外壳Q通过javascript动态读取XML中的数据Q时刻能自动更新囄和图片的标题?/p> <p>下面l出代码供大家参考。其中的focus.swf需要到|上M载, 下蝲地址Q?a target="_blank"><u><font color="#800080">http://www.webjx.com/js/focus.swf</font></u></a> <br /> <br /> <script type="text/javascript"> <br /> <!-- <br /> imgUrl1="囄链接地址1"; <br /> imgtext1="囄文字昄内容1" <br /> imgLink1=escape("链接|页地址1"); <br /> imgUrl2="囄链接地址2"; <br /> imgtext2="囄文字昄内容2" <br /> imgLink2=escape("链接|页地址2"); <br /> imgUrl3="囄链接地址3"; <br /> imgtext3="囄文字昄内容3" <br /> imgLink3=escape("链接|页地址3"); <br /> <br /> <br /> var focus_width=180//囄?<br /> var focus_height=220//囄?<br /> var text_height=18//文字昄高度 <br /> var swf_height = focus_height+text_height <br /> <br /> var pics=imgUrl1+"|"+imgUrl2+"|"+imgUrl3 <br /> var links=imgLink1+"|"+imgLink2+"|"+imgLink3 <br /> var texts=imgtext1+"|"+imgtext2+"|"+imgtext3 <br /> <br /> document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="<a target="_blank"><u><font color="#800080">http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6</font></u></a>,0,0,0" </p> <p>width="'+ focus_width +'" height="'+ swf_height +'">'); <br /> document.write('<param name="allowScriptAccess" value="sameDomain"></p> <p><param name="movie" value="focus.swf"><param name="quality" value="high"></p> <p><param name="bgcolor" value="#F0F0F0">'); <br /> document.write('<param name="menu" value="false"><param name=wmode value="opaque">'); <br /> document.write('<param name="FlashVars" value="pics='+pics+'&links='+links+'&texts='+texts+'&borderwidth</p> <p>='+focus_width+'&borderheight='+focus_height+'&textheight='+text_height+'">'); <br /> document.write('<embed src="pixviewer.swf" wmode="opaque" FlashVars="pics='+pics+'&links='+links+'&texts='+texts+'&borderwidth='+focus_width+'&borderheight</p> <p>='+focus_height+'&textheight='+text_height+'" menu="false" bgcolor="#F0F0F0" quality="high" width="'+ focus_width +'" height="'+ focus_height +'" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="<a target="_blank"><u><font color="#800080">http://www.macromedia.com/go/getflashplayer</font></u></a>" />'); document.write('</object>'); <br /> </script> </p> </div> <img src ="http://www.tkk7.com/lvq810/aggbug/212679.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/lvq810/" target="_blank">lvq810</a> 2008-07-04 20:41 <a href="http://www.tkk7.com/lvq810/articles/212679.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>手动qȝ囄效果http://www.tkk7.com/lvq810/articles/212678.htmllvq810lvq810Fri, 04 Jul 2008 12:41:00 GMThttp://www.tkk7.com/lvq810/articles/212678.htmlhttp://www.tkk7.com/lvq810/comments/212678.htmlhttp://www.tkk7.com/lvq810/articles/212678.html#Feedback0http://www.tkk7.com/lvq810/comments/commentRss/212678.htmlhttp://www.tkk7.com/lvq810/services/trackbacks/212678.html
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>|页Ҏ| www.qpsh.com</title>
<style>
.spic a img{-moz-opacity:0.5; filter:alpha(opacity=50);border:0px;}
.spic a:hover{font-size:9px;}
.spic a:hover img{-moz-opacity:0.5; filter:alpha(opacity=100);cursor:hand;}
</style>
<script>
function seeBig(thispic) {
  if(thispic==1){
    document.all.viewPic.innerHTML='<a target=_blank href=http://www.qpsh.com><img border=0 src=http://news.xinhuanet.com/photo/2007-12/18/xinsrc_32212041808203903041948.jpg width=300 height=250 style="border: 1px solid #C0C0C0"></a>'
  }
  if(thispic==2){
    document.all.viewPic.innerHTML='<a target=_blank href=http://www.qpsh.com><img border=0 src=http://news.xinhuanet.com/photo/2007-10/11/xinsrc_242100411072412537118.jpg width=300 height=250 style="border: 1px solid #C0C0C0"></a>'
  }
  if(thispic==3){
    document.all.viewPic.innerHTML='<a target=_blank href=http://www.qpsh.com><img border=0 src=http://news3.xinhuanet.com/world/2007-01/15/xin_0220104150902234148817.jpg width=300 height=250 style="border: 1px solid #C0C0C0"></a>'
  }
  if(thispic==4){
    document.all.viewPic.innerHTML='<a target=_blank href=http://www.qpsh.com><img border=0 src=http://news.xinhuanet.com/photo/2007-12/19/xinsrc_29212041908371712536913.jpg width=300 height=250 style="border: 1px solid #C0C0C0"></a>'
  }
}
</script>
</head>

<body>

<table border="0" width="300" cellpadding="0" style="border-collapse: collapse">
    <tr>
        <td colspan="7" align="center" id="viewPic"><a target=_blank href=http://www.qpsh.com>
        <img  src="http://news.xinhuanet.com/photo/2007-12/18/xinsrc_32212041808203903041948.jpg" width=300 height=250 style="border: 1px solid #C0C0C0"></a></td>
    </tr>
    <tr>
        <td colspan="7" align="center"  height="15"></td>
    </tr>
    <tr>
        <td align="center" width="70"><span class="spic">
        <a href=# onmouseover="javascript:seeBig(1)" style="cursor:pointer">
        <img border="0" src="http://news.xinhuanet.com/photo/2007-12/18/xinsrc_32212041808203903041948.jpg" width="65" height="50" style="border: 1px solid #C0C0C0"></a></span></td>
        <td align="center" width="7"></td>
        <td align="center" width="70"><span class="spic">
        <a href=# onmouseover="javascript:seeBig(2)" style="cursor:pointer">
        <img border="0" src="http://news.xinhuanet.com/photo/2007-10/11/xinsrc_242100411072412537118.jpg" width="65" height="50" style="border: 1px solid #C0C0C0"></a></span></td>
        <td align="center" width="7"></td>
        <td align="center" width="70"><span class="spic">
        <a href=# onmouseover="javascript:seeBig(3)" style="cursor:pointer">
        <img border="0" src="http://news3.xinhuanet.com/world/2007-01/15/xin_0220104150902234148817.jpg" width="65" height="50" style="border: 1px solid #C0C0C0"></a></span></td>
        <td align="center" width="6"></td>
        <td align="center" width="70"><span class="spic">
        <a href=# onmouseover="javascript:seeBig(4)" style="cursor:pointer">
        <img border="0" src="http://news.xinhuanet.com/photo/2007-12/19/xinsrc_29212041908371712536913.jpg" width="65" height="50" style="border: 1px solid #C0C0C0" align="right"></a></span></td>
    </tr>
</table>

</body>

</html>


lvq810 2008-07-04 20:41 发表评论
]]>
JavaScript自动囄切换http://www.tkk7.com/lvq810/articles/212677.htmllvq810lvq810Fri, 04 Jul 2008 12:40:00 GMThttp://www.tkk7.com/lvq810/articles/212677.htmlhttp://www.tkk7.com/lvq810/comments/212677.htmlhttp://www.tkk7.com/lvq810/articles/212677.html#Feedback1http://www.tkk7.com/lvq810/comments/commentRss/212677.htmlhttp://www.tkk7.com/lvq810/services/trackbacks/212677.html Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlight...  阅读全文

lvq810 2008-07-04 20:40 发表评论
]]>
10ƾ让你震撼的囄展示js代码[转]http://www.tkk7.com/lvq810/articles/211997.htmllvq810lvq810Tue, 01 Jul 2008 12:40:00 GMThttp://www.tkk7.com/lvq810/articles/211997.htmlhttp://www.tkk7.com/lvq810/comments/211997.htmlhttp://www.tkk7.com/lvq810/articles/211997.html#Feedback2http://www.tkk7.com/lvq810/comments/commentRss/211997.htmlhttp://www.tkk7.com/lvq810/services/trackbacks/211997.html文章转蝲于:http://bolm.cn/blog/?p=154


http://bolm.cn/designonline/10_js_img/1/

http://bolm.cn/designonline/10_js_img/2/

http://bolm.cn/designonline/10_js_img/3/

http://bolm.cn/designonline/10_js_img/4/

http://bolm.cn/designonline/10_js_img/5/

http://bolm.cn/designonline/10_js_img/6/

http://bolm.cn/designonline/10_js_img/7/

http://bolm.cn/designonline/10_js_img/8/

http://bolm.cn/designonline/10_js_img/9/

http://bolm.cn/designonline/10_js_img/10/

[源码下蝲]




lvq810 2008-07-01 20:40 发表评论
]]>
HTTP协议头字D及分析http://www.tkk7.com/lvq810/articles/210181.htmllvq810lvq810Mon, 23 Jun 2008 14:48:00 GMThttp://www.tkk7.com/lvq810/articles/210181.htmlhttp://www.tkk7.com/lvq810/comments/210181.htmlhttp://www.tkk7.com/lvq810/articles/210181.html#Feedback0http://www.tkk7.com/lvq810/comments/commentRss/210181.htmlhttp://www.tkk7.com/lvq810/services/trackbacks/210181.html==============
 HTTP头字D包?c:
       general-header ;
     request-header ;
       response-header ;
     entity-header .
 
*******************************************************************************
 General Header Fields
=============================
   general header是request、response都可用的, 但是不能用于entity.
 
 
       Q- Cache-Control
       Q- Connection
       Q- Date
       Q- Pragma
       Q- Trailer
       Q- Transfer-Encoding
       Q- Upgrade
       Q- Via
       Q- Warning
 
*******************************************************************************
 Request Header Fields
======================
 
   request-header fields 允许客户端传递关于request和客L的附加信息到服务端,
 
       Q- Accept
       Q- Accept-Charset
       Q- Accept-Encoding
       Q- Accept-Language
       Q- Authorization
       Q- Expect
       Q- From
       Q- Host
       Q- If-Match
       Q- If-Modified-Since
       Q- If-None-Match
       Q- If-Range
       Q- If-Unmodified-Since
       Q- Max-Forwards
       Q- Proxy-Authorization
       Q- Range
       Q- Referer
       Q- TE
       Q- User-Agent
 
*******************************************************************************
  Response Header Fields
===============================
 
   response-header fields 允许服务端传递关于response的、不能放到Status-Line的附加信息?/div>
   q些头给出关于服务端的信息?nbsp; 
 
      Q- Accept-Ranges
      Q- Age
      Q- ETag
      Q- Location
      Q- Proxy-Authenticate
      Q- Retry-After
      Q- Server
      Q- Vary
      Q- WWW-Authenticate
 
*******************************************************************************
 Entity Header Fields
========================
 
   Entity-header fields 定义关于entity-body的metainformation(标题字段数据),
   如果当前没有body, 则定义被request定的资源信?
   一些metainformation是可选的; 一些是必须的?/div>
 
       Q- Allow
       Q- Content-Encoding
       Q- Content-Language
       Q- Content-Length
       Q- Content-Location
       Q- Content-MD5
       Q- Content-Range
       Q- Content-Type
       Q- Expires
       Q- Last-Modified
       Q- extension-header



一、基?br /> HTTPQHyperTextTransferProtocolQ? 是超文本传输协议的羃写,它用于传送WWW方式的数据,关于HTTP协议的详l内容请参考RFC2616。HTTP协议采用了请?响应模型。客L向服 务器发送一个请求,h头包含请求的Ҏ、URI、协议版本、以及包含请求修饰符、客户信息和内容的类gMIME的消息结构。服务器以一个状态行作ؓ? 应,相应的内容包括消息协议的版本Q成功或者错误编码加上包含服务器信息、实体元信息以及可能的实体内宏V?br /> 通常HTTP消息包括客户机向服务器的h消息和服务器向客h的响应消息。这两种cd的消息由一个v始行Q一个或者多个头域,一个只是头域结束的I和可选的消息体组成?strong>HTTP的头域包括通用_h_响应头和实体头四个部?/strong>?font color="#0033ff">每个头域׃个域名,冒号Q?Q和域g部分l成?/font>域名是大写无关的,域值前可以dM数量的空格符Q头域可以被扩展为多行,在每行开始处Q用至一个空格或制表W?br /> 1、通用头域
通用头域包含h和响应消息都支持的头域,通用头域包含Cache-Control、Connection、Date、Pragma、Transfer-Encoding、Upgrade、Via?/font>寚w用头域的扩展要求通讯双方都支持此扩展Q如果存在不支持的通用头域Q一般将会作为实体头域处理。下面简单介l几个在UPnP消息中用的通用头域?br /> Cache-Control头域
Cache-Control指定h和响应遵循的~存机制?/font>? h消息或响应消息中讄Cache-Controlq不会修改另一个消息处理过E中的缓存处理过E。请求时的缓存指令包括no-cache、no- store、max-age、max-stale、min-fresh、only-if-cachedQ响应消息中的指令包括public? private、no-cache、no-store、no-transform、must-revalidate、proxy-revalidate? max-age。各个消息中的指令含义如下:
Public指示响应可被M~存区缓存?br /> Private指示对于单个用户的整个或部分响应消息Q不能被׃n~存处理。这允许服务器仅仅描q当用户的部分响应消息,此响应消息对于其他用Lh无效?br /> no-cache指示h或响应消息不能缓?br /> no-store用于防止重要的信息被无意的发布。在h消息中发送将使得h和响应消息都不用缓存?br /> max-age指示客户机可以接收生存期不大于指定时_以秒为单位)的响应?br /> min-fresh指示客户机可以接收响应时间小于当前时间加上指定时间的响应?br /> max-stale指示客户机可以接收超时期间的响应消息。如果指定max-stale消息的|那么客户机可以接收超时期指定g内的响应消息?br /> Date头域
Date头域表示消息发送的旉Q时间的描述格式由rfc822定义。例如,Date:Mon,31Dec200104:25:57GMT。Date描述的时间表CZ界标准时Q换成本地旉Q需要知道用h在的时区?br /> Pragma头域
Pragma头域用来包含实现特定的指令,最常用的是Pragma:no-cache?/font>在HTTP/1.1协议中,它的含义和Cache-Control:no-cache相同?br /> 2、请求消?/strong>
h消息的第一行ؓ下面的格式:
Method SP Request-URI SP HTTP-Version CRLF 
Method表示对于Request-URI完成的方?/strong>Q这个字D|大小写敏感的Q?font color="#0000ff">包括OPTIONS、GET、HEAD、POST、PUT、DELETE、TRACE?/font>ҎGET和HEAD应该被所有的通用WEB服务器支持,其他所有方法的实现是可选的?font color="#0000ff">GETҎ取回由Request-URI标识的信息?/font>HEADҎ也是取回由Request-URI标识的信息,只是可以在响应时Q不q回消息体?font color="#0033ff">POSTҎ可以h服务器接收包含在h中的实体信息Q可以用于提交表单,向新ȝ、BBS、邮件群l和数据库发送消息?/font>
SP表示I格?br /> Request-URI遵@URI格式Q在此字Dؓ星号Q?Q时Q说明请求ƈ不用于某个特定的资源地址Q而是用于服务器本w?br /> HTTP-Version表示支持的HTTP版本Q例如ؓHTTP/1.1?br /> CRLF表示换行回RW?/strong>
? 求头域允许客L向服务器传递关于请求或者关于客h的附加信息。请求头域可能包含下列字DAccept、Accept-Charset、Accept- Encoding、Accept-Language、Authorization、From、Host、If-Modified-Since、If- Match、If-None-Match、If-Range、If-Range、If-Unmodified-Since、Max-Forwards? Proxy-Authorization、Range、Referer、User-Agent?/font>对请求头域的扩展要求通讯双方都支持,如果存在不支持的h头域Q一般将会作为实体头域处理?br /> 典型的请求消息:
GEThttp://class/download.microtool.de:80/somedata.exe
Host:download.microtool.de
Accept:*/*
Pragma:no-cache
Cache-Control:no-cache
Referer:http://class/download.microtool.de/
User-Agent:Mozilla/4.04[en](Win95;I;Nav)
Range:bytes=554554-
上例W一行表CHTTP客户端(可能是浏览器、下载程序)通过GETҎ获得指定URL下的文g。棕色的部分表示h头域的信息,l色的部分表C通用头部分?br /> Host头域
Host头域指定h资源的IntenetL和端口号Q必表C求url的原始服务器或网关的位置。HTTP/1.1h必须包含L头域Q否则系l会?00状态码q回?br /> Referer头域
Referer头域允许客户端指定请求uri的源资源地址Q这可以允许服务器生成回退链表Q可用来登陆、优化cache{。他也允许废除的或错误的q接׃l护的目的被q踪。如果请求的uri没有自己的uri地址QReferer不能被发送。如果指定的是部分uri地址Q则此地址应该是一个相对地址?br /> Range头域
Range头域可以h实体的一个或者多个子范围。例如,
表示?00个字节:bytes=0-499
表示W二?00字节Qbytes=500-999
表示最?00个字节:bytes=-500
表示500字节以后的范_bytes=500-
W一个和最后一个字节:bytes=0-0,-1
同时指定几个范围Qbytes=500-600,601-999
但是服务器可以忽略此h_如果无条件GET包含Rangeh_响应会以状态码206QPartialContentQ返回而不是以200QOKQ?br /> User-Agent头域
User-Agent头域的内容包含发求的用户信息?br />
3、响应消?br /> 响应消息的第一行ؓ下面的格式:
HTTP-Version SP Status-Code SP Reason-Phrase CRLF
HTTP-Version表示支持的HTTP版本Q例如ؓHTTP/1.1?br /> Status-Code是一个三个数字的l果代码?br /> Reason-PhraselStatus-Code提供一个简单的文本描述。Status-Code主要用于机器自动识别QReason-Phrase主要用于帮助用户理解?font color="#0000ff">Status-Code的第一个数字定义响应的cdQ后两个数字没有分类的作?/font>。第一个数字可能取5个不同的|
1xx:信息响应c,表示接收到请求ƈ且l处?br /> 2xx:处理成功响应c,表示动作被成功接收、理解和接受
3xx:重定向响应类Qؓ了完成指定的动作Q必L受进一步处?br /> 4xx:客户端错误,客户h包含语法错误或者是不能正确执行
5xx:服务端错误,服务器不能正执行一个正的h
? 应头域允许服务器传递不能放在状态行的附加信息,q些域主要描q服务器的信息和Request-URIq一步的信息。响应头域包含Age? Location、Proxy-Authenticate、Public、Retry-After、Server、Vary、Warning、WWW- Authenticate?/font>对响应头域的扩展要求通讯双方都支持,如果存在不支持的响应头域Q一般将会作为实体头域处理?br /> 典型的响应消息:
HTTP/1.0200OK
Date:Mon,31Dec200104:25:57GMT
Server:Apache/1.3.14(Unix)
Content-type:text/html
Last-modified:Tue,17Apr200106:46:28GMT
Etag:"a030f020ac7c01:1e9f"
Content-length:39725426
Content-range:bytes554554-40279979/40279980
上例W一行表CHTTP服务端响应一个GETҎ。棕色的部分表示响应头域的信息,l色的部分表C通用头部分,U色的部分表C实体头域的信息?br /> Location响应?/strong>
Location响应头用于重定向接收者到一个新URI地址?/font>
Server响应?/strong>
Server响应头包含处理请求的原始服务器的软g信息。此域能包含多个产品标识和注释,产品标识一般按照重要性排序?br /> 4、实体信?/strong>
h消息和响应消息都可以包含实体信息Q?strong>实体信息一般由实体头域和实体组成?/strong>? 体头域包含关于实体的原信息,实体头包括Allow、Content-Base、Content-Encoding、Content-Language? Content-Length、Content-Location、Content-MD5、Content-Range、Content-Type? Etag、Expires、Last-Modified、extension-header。extension-header允许客户端定义新的实体头Q但是这些域可能无法未接受方识别?font color="#0000ff">实体可以是一个经q编码的字节,它的~码方式由Content-Encoding或Content-Type定义Q它的长度由Content-Length或Content-Range定义?/font>
Content-Type实体?/strong>
Content-Type 实体头用于向接收ҎC实体的介质cdQ指定HEADҎ送到接收方的实体介质cdQ或GETҎ发送的h介质cdContent-Range实体?br /> Content-Range实体?/strong>
用于指定整个实体中的一部分的插入位|,他也指示了整个实体的长度。在服务器向客户q回一个部分响应,它必Lq响应覆盖的范围和整个实体长度。一般格式:
Content-Range:bytes-unit SP first-byte-pos - last-byte-pos/entity-legth
? 如,传送头500个字节次字段的Ş式:Content-Range:bytes0-499/1234如果一个http消息包含此节Q例如,对范围请求的? 应或对一pd范围的重叠请求)QContent-Range表示传送的范围QContent-Length表示实际传送的字节数?br /> Last-modified实体?/strong>
Last-modified实体头指定服务器上保存内容的最后修订时间?/font>
5?HTTP 头参考(microsoftQ?/strong>
HTTP h?HTTP 响应都用头发送有?HTTP 消息的信息。头׃pd行组成,每行都包含名Uͼ然后依次是冒受空根{倹{字D可按Q何顺序排列。某些头字段既能用于h头也能用于响应头Q而另一些头字段只能用于其中之一?
? 多请求头字段都允许客L在值部分指定多个可接受的选项Q有时甚臛_以对q些选项的首选项q行排名。多个项以逗号分隔。例如,客户端可以发送包? “Content-Encoding: gzip, compress,”的请求头Q表C可以接受各U压~类型。如果服务器的响应正文?gzip ~码Q其响应头中包?#8220;Content-Encoding: gzip”?br /> 有些字段可以在单个头中出现多ơ。例如,头可以有多个“Warning”字段?br /> ? 表列Z HTTP 1.1 头字Dc注意:有些头字D| MIME 字段。MIME 字段?Internet Engineering Task Force (IETF) 文档 RFC 2045 中进行了定义Q但也可用于 HTTP 1.1 协议。有?MIME ?HTTP 1.1 规范的详l信息,请参?IEIF c?br /> 一般头字段
一般头字段可用于请求消息和响应消息?/font>
 名称          CZ?
Cache-Control
  "max-age=10"
Connection    "close"
Date          "Tue, 11 Jul 2000 18:23:51 GMT"
Pragma        "no-cache"
Trailer         "Date"
Transfer-Encoding "chunked"
Upgrade       "SHTTP/1.3"
Via            "HTTP/1.1 Proxy1, HTTP/1.1 Proxy2"
Warning       "112 Disconnected Operation"
h头字D?/strong>
h头字D仅用于h消息?/font>
   名称             CZ?/strong>
Accept           "text/html, image/*"
Accept-Charset   "iso8859-5"
Accept-Encoding  "gzip, compress"
Accept-Language "en, fr"
Authorization     [credentials]
Content-Encoding "gzip"
Expect           "100-continue"
From            "user@microsoft.com"
Host            "www.microsoft.com"
If-Match         "entity_tag001"
If-Modified-Since "Tue, 11 Jul 2000 18:23:51 GMT"
If-None-Match    "entity_tag001"
If-Range         "entity_tag001" or "Tue, 11 Jul 2000 18:23:51 GMT"
If-Unmodified-Since "Tue, 11 Jul 2000 18:23:51 GMT"
Max-Forwards    "3"
Proxy-Authorization [credentials]
Range       "bytes=100-599"
Referer      "http://www.microsoft.com/resources.asp"
TE          "trailers"
User-Agent   "Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)"
 
>>h头字D늚具体含义
AcceptQ?/strong>览器可接受的MIMEcd?
Accept-CharsetQ?/strong>览器可接受的字W集?
Accept-EncodingQ?/strong>览器能够进行解码的数据~码方式Q比如gzip?br /> Accept-LanguageQ?/strong>览器所希望的语aU类Q当服务器能够提供一U以上的语言版本时要用到?
AuthorizationQ授权信息,通常出现在对服务器发送的WWW-Authenticate头的应答中?
ConnectionQ?/strong>? C是否需要持久连接。如果Servlet看到q里的gؓ“Keep-Alive”Q或者看到请求用的是HTTP 1.1QHTTP 1.1默认q行持久q接Q,它就可以利用持久q接的优点,当页面包含多个元素时Q例如AppletQ图片)Q显著地减少下蝲所需要的旉。要实现q一点, Servlet需要在应答中发送一个Content-Length_最单的实现Ҏ是:先把内容写入ByteArrayOutputStreamQ然 后在正式写出内容之前计算它的大小?br /> Content-LengthQ表C求消息正文的长度?
CookieQ设|cookie,q是最重要的请求头信息之一
FromQ?/strong>h发送者的email地址Q由一些特D的Web客户E序使用Q浏览器不会用到它?
HostQ?/strong>初始URL中的L和端口?
If-Modified-SinceQ只有当所h的内容在指定的日期之后又l过修改才返回它Q否则返?04“Not Modified”应答?
PragmaQ?/strong>指定“no-cache”DC服务器必须q回一个刷新后的文档,即它是代理服务器而且已经有了面的本地拷贝?
RefererQ?/strong>包含一个URLQ用户从该URL代表的页面出发访问当前请求的面?
User-AgentQ?/strong>览器类型,如果Servletq回的内容与览器类型有兛_该值非常有用?br /> UA-PixelsQUA-ColorQUA-OSQUA-CPUQ?/strong>由某些版本的IE览器所发送的非标准的h_表示屏幕大小、颜色深度、操作系l和CPUcd?
响应头字D?/strong>
响应头字D仅用于响应消息?/font>
  名称          CZ?/strong>
Accept-Ranges  "none"
Age            "2147483648(2^31)"
ETag           "b38b9-17dd-367c5dcd"
Last-Modified    "Tue, 11 Jul 2000 18:23:51 GMT"
Location        "http://localhost/redirecttarget.asp"
Proxy-Authenticate [challenge]
Retry-After      "Tue, 11 Jul 2000 18:23:51 GMT" or "60"
Server         "Microsoft-IIS/5.0"
Vary            "Date"
WWW-Authenticate [challenge]
实体头字D?/strong>
实体头字D可以用于请求消息或响应消息。实体头字段中包含消息实体正文的有关信息Q如使用的编码格式?/font>
名称            CZ?
Allow              "GET, HEAD"
Content-Encoding   "gzip"
Content-Language  "en"
Content-Length     "8445"
Content-Location   "http://localhost/page.asp"
Content-MD5       [md5-digest]
Content-Range     "bytes 2543-4532/7898"
Content-Type      "text/html"
Expires           "Tue, 11 Jul 2000 18:23:51 GMT"
Last-Modified      "Tue, 11 Jul 2000 18:23:51 GMT"
>>实体头字D늚具体含义
Allow 服务器支持哪些请求方法(如GET、POST{)?br /> Content-Encoding 文档的编码(EncodeQ方法。只有在解码之后才可以得到Content-Type头指定的内容cd。利用gzip压羃文档能够显著地减HTML文档 的下载时间。Java的GZIPOutputStream可以很方便地q行gzip压羃Q但只有Unix上的Netscape和Windows上的IE 4、IE 5才支持它?br /> Content-Length 表示内容长度。只有当览器用持久HTTPq接时才需要这个数据?br /> Content-Type 表示后面的文档属于什么MIMEcd。Servlet默认为text/plainQ但通常需要显式地指定为text/html?br /> Date 当前的GMT旉。你可以用setDateHeader来设|这个头以避免{换时间格式的ȝ?
Expires 应该在什么时候认为文档已l过期,从而不再缓存它Q?
Last-Modified 文档的最后改动时间。客户可以通过If-Modified-Sinceh头提供一个日期,该请求将被视Z个条件GETQ只有改动时间迟于指定时间的文档才会q回Q否则返回一?04QNot ModifiedQ状态?br /> Location 表示客户应当到哪里去提取文档。Location通常不是直接讄的,而是通过HttpServletResponse的sendRedirectҎQ该Ҏ同时讄状态代码ؓ302?
Refresh 表示览器应该在多少旉之后h文档Q以U计。除了刷新当前文档之外,你还可以通过setHeader("Refresh", "5; URL=http://host/path")让浏览器d指定的页面?
? 意这U功能通常是通过讄HTML面HEAD区的QMETA. HTTP-EQUIV="Refresh" CQ实玎ͼq是因ؓQ自动刷新或重定向对于那些不能用CGI或Servlet的HTML~写者十分重要。但是,对于Servlet来说Q直接设|? Refresh头更加方ѝ?
注意Refresh的意义是“NU之后刷新本面或访问指定页?#8221;Q而不?#8220;每隔NU刷新本面或访问指定页? ”。因此,q箋h要求每次都发送一个Refresh_而发?04状态代码则可以L览器l刷斎ͼ不管是用Refresh头还是<META. HTTP-EQUIV="Refresh" ...Q?
注意Refresh头不属于HTTP 1.1正式规范的一部分Q而是一个扩展,但Netscape和IE都支持它?
h头示?/strong>
以下?HTTP h的简单示例?br /> GET /articles/news/today.asp HTTP/1.1
Accept: */*
Accept-Language: en-us
Connection: Keep-Alive
Host: localhost
Referer: http://localhost/links.asp
User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)
Accept-Encoding: gzip, deflate
该请求具有请求行Q其中包括方?(GET)、资源\?(/articles/news/today.asp) ?HTTP 版本 (HTTP/1.1)。由于该h没有正文Q故所有请求行后面的内定w是头的一部分。紧接着头之后是一个空行,表示头已l束?br /> 响应头示?/strong>
Web 服务器可以通过多种方式响应前一个请求。假设文件是可以讉K的,q且用户h查看该文件的权限Q则响应cM于:
HTTP/1.1 200 OK
Server: Microsoft-IIS/5.0
Date: Thu, 13 Jul 2000 05:46:53 GMT
Content-Length: 2291
Content-Type: text/html
Set-Cookie: ASPSESSIONIDQQGGGNCG=LKLDFFKCINFLDMFHCBCBMFLJ; path=/
Cache-control: private
...
响应的第一行称为状态行。它包含响应所用的 HTTP 版本、状态编?(200) 和原因短语。示例中包含一个头Q其中具有五个字D,接着是一个空行(回R和换行符Q,然后是响应正文的头两行?br /> 有关HTTP头完整、详l的说明Q请参见http://www.w3.org/Protocols/的HTTP规范?/div>
 
附录:HTTP协议状态码的含?br /> 状态代?状态信?含义
100 Continue 初始的请求已l接受,客户应当l箋发送请求的其余部分。(HTTP 1.1斎ͼ
101 Switching Protocols 服务器将遵从客户的请求{换到另外一U协议(HTTP 1.1?br /> 200 OK 一切正常,对GET和POSTh的应{文档跟在后面?br /> 201 Created 服务器已l创Z文档QLocation头给Z它的URL?br /> 202 Accepted 已经接受hQ但处理未完成?
203 Non-Authoritative Information 文档已经正常地返回,但一些应{头可能不正,因ؓ使用的是文档的拷贝(HTTP 1.1斎ͼ?
204 No Content 没有新文档,览器应该l显C原来的文档?br /> 205 Reset Content 没有新的内容Q但览器应该重|它所昄的内宏V用来强制浏览器清除表单输入内容QHTTP 1.1斎ͼ?
206 Partial Content 客户发送了一个带有Range头的GEThQ服务器完成了它QHTTP 1.1斎ͼ?
300 Multiple Choices 客户h的文档可以在多个位置扑ֈQ这些位|已l在q回的文档内列出。如果服务器要提Z先选择Q则应该在Location应答头指明?
301 Moved Permanently 客户h的文档在其他地方Q新的URL在Location头中l出Q浏览器应该自动地访问新的URL?
302 Found cM?01Q但新的URL应该被视Z时性的替代Q而不是永久性的。注意,在HTTP1.0中对应的状态信息是“Moved Temporatily”Q出现该状态代码时Q浏览器能够自动讉K新的URLQ因此它是一个很有用的状态代码。注意这个状态代码有时候可以和301替换? 用。例如,如果览器错误地hhttp://host/~userQ缺了后面的斜杠)Q有的服务器q回301Q有的则q回302。严格地_我们只能假定只有当原来的h是GET时浏览器才会自动重定向。请参见307?
303 See Other cM?01/302Q不同之处在于,如果原来的请求是POSTQLocation头指定的重定向目标文档应该通过GET提取QHTTP 1.1斎ͼ?
304 Not Modified 客户端有~冲的文档ƈ发出了一个条件性的hQ一般是提供If-Modified-Since头表C客户只x指定日期更新的文档)。服务器告诉客户Q原来缓冲的文档q可以l用?br /> 305 Use Proxy 客户h的文档应该通过Location头所指明的代理服务器提取QHTTP 1.1斎ͼ?br /> 307 Temporary Redirect ?02QFoundQ相同。许多浏览器会错误地响应302应答q行重定向,即原来的请求是POSTQ即使它实际上只能在POSTh的应{是303? 才能重定向。由于这个原因,HTTP 1.1新增?07Q以便更加清除地区分几个状态代码:当出?03应答Ӟ览器可以跟随重定向的GET和POSThQ如果是307应答Q则览器只 能跟随对GETh的重定向。(HTTP 1.1斎ͼ
400 Bad Request h出现语法错误?
401 Unauthorized 客户试图未经授权讉K受密码保护的面。应{中会包含一个WWW-Authenticate_览器据此显C用户名?密码对话框,然后在填写合适的Authorization头后再次发出h?
403 Forbidden 资源不可用。服务器理解客户的请求,但拒l处理它。通常׃服务器上文g或目录的权限讄D?
404 Not Found 无法扑ֈ指定位置的资源。这也是一个常用的应答Q?
405 Method Not Allowed hҎQGET、POST、HEAD、DELETE、PUT、TRACE{)Ҏ定的资源不适用。(HTTP 1.1斎ͼ
406 Not Acceptable 指定的资源已l找刎ͼ但它的MIMEcd和客户在Accpet头中所指定的不兼容QHTTP 1.1斎ͼ?
407 Proxy Authentication Required cM?01Q表C客户必dl过代理服务器的授权。(HTTP 1.1斎ͼ
408 Request Timeout 在服务器许可的等待时间内Q客户一直没有发ZQ何请求。客户可以在以后重复同一h。(HTTP 1.1斎ͼ
409 Conflict 通常和PUTh有关。由于请求和资源的当前状态相冲突Q因此请求不能成功。(HTTP 1.1斎ͼ
410 Gone 所h的文档已l不再可用,而且服务器不知道应该重定向到哪一个地址。它?04的不同在于,q回407表示文档怹地离开了指定的位置Q?04表示׃未知的原因文档不可用。(HTTP 1.1斎ͼ
411 Length Required 服务器不能处理请求,除非客户发送一个Content-Length头。(HTTP 1.1斎ͼ
412 Precondition Failed h头中指定的一些前提条件失败(HTTP 1.1斎ͼ?
413 Request Entity Too Large 目标文档的大超q服务器当前愿意处理的大。如果服务器认ؓ自己能够E后再处理该hQ则应该提供一个Retry-After_HTTP 1.1斎ͼ?
414 Request URI Too Long URI太长QHTTP 1.1斎ͼ?
416 Requested Range Not Satisfiable 服务器不能满_户在h中指定的Range头。(HTTP 1.1斎ͼ
500 Internal Server Error 服务器遇C意料不到的情况,不能完成客户的请求?
501 Not Implemented 服务器不支持实现h所需要的功能。例如,客户发出了一个服务器不支持的PUTh?br /> 502 Bad Gateway 服务器作为网x者代理时Qؓ了完成请求访问下一个服务器Q但该服务器q回了非法的应答?
503 Service Unavailable 服务器由于维护或者负载过重未能应{?br /> 504 Gateway Timeout ׃Z理或|关的服务器使用Q表CZ能及时地从远E服务器获得应答。(HTTP 1.1斎ͼ
505 HTTP Version Not Supported 服务器不支持h中所指明的HTTP版本


lvq810 2008-06-23 22:48 发表评论
]]>HTTP协议及其h头分?/title><link>http://www.tkk7.com/lvq810/articles/210180.html</link><dc:creator>lvq810</dc:creator><author>lvq810</author><pubDate>Mon, 23 Jun 2008 14:47:00 GMT</pubDate><guid>http://www.tkk7.com/lvq810/articles/210180.html</guid><wfw:comment>http://www.tkk7.com/lvq810/comments/210180.html</wfw:comment><comments>http://www.tkk7.com/lvq810/articles/210180.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/lvq810/comments/commentRss/210180.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/lvq810/services/trackbacks/210180.html</trackback:ping><description><![CDATA[HTTP协议及其h头分?span style="display: none;"> vE;TYm/ </span> <br /> <span style="display: none;"> 73\='AJ </span> <br /> 众所周知QInternet的基本协议是TCP/IP协议Q目前广泛采用的FTP、Archie Gopher{是建立在TCP/IP协议之上的应用层协议Q不同的协议对应着不同的应用?span style="display: none;"> 7 nf;> O </span> <br /> <span style="display: none;"> >a|,- </span> <br /> WWW服务器用的主要协议是HTTP协议Q即文体传输协议。由于HTTP协议支持的服务不限于WWWQ还可以是其它服务,因而HTTP协议允许? 户在l一的界面下Q采用不同的协议讉K不同的服务,如FTP、Archie、SMTP、NNTP{。另外,HTTP协议q可用于名字服务器和分布式对象管 理?span style="display: none;"> F-|<K&j1A </span> <br /> <span style="display: none;"> #e~{$d!(4. </span> <br /> HTTP的早期版本ؓHTTP/0.9Q它适用于各U数据信息的z快速协议,但是其远不能满日益发展各种应用的需要。但HTTP/0.9作ؓHTTP 协议h典型的无状态性:每个事务都是独立q行处理的,当一个事务开始就在客户与服务器之间徏立一个连接,当事务结束时释放这个连接。HTTP/0.9 包含Simple-Request&Simple-Responsed的报文结构。但是客h法用内容协商,所以服务器也无法返回实体的媒体c? 型?<span style="display: none;"> &|W_h/; </span> <br /> <span style="display: none;"> AE)k}?PL </span> <br /> 1982q_Tim Berners-Lee提出了HTTP/1.0Q在此后的不断丰富和发展中,HTTP/1.0成ؓ最重要的面向事务的应用层协议。该协议Ҏ一ơ请?? 应,建立q拆除一ơ连接。其特点是简单、易于管理,所以它W合了大家的需要,得到了广泛的应用。其~点是仍会发生下列问题:对用戯求响应慢、网l拥塞严 重、安全性等?<span style="display: none;"> 13r{ ']Hf </span> <br /> <span style="display: none;"> fhbrKF` </span> <br /> 1997qŞ成的HTTP/1.1Q也是现在普遍使用的协议,在持l连接操作机制中实现水方式Q即客户端需要对同一服务器发出多个请求时Q其实现 在多数的|页都是有多部分l成Q比如多张图片)Q可用流水线方式加快速度Q流水机制就是指q箋发出多个hq等到这些请求发送完毕,再等待响应。这样就? 大节省了单独h对响应的{待旉Q我们得到更快速的览?<span style="display: none;"> qmhFr-[Y> </span> <br /> <span style="display: none;"> s{(^xD^ </span> <br /> 另外QHTTP/1.1服务器端处理h时按照收到的序q行,q就保证了传输的正确性。当Ӟ服务器端在发生连接中断时Q会自动的重传请求,保证数据的完整性?<span style="display: none;"> FJ|~h 5.S> </span> <br /> <span style="display: none;"> fJ;NlB!Ku </span> <br /> HTTP/1.1q提供了w䆾认证、状态管理和Cache~存{机制。这里,我想特别提一下关于HTTP/1.1中的Cache~存机制对HTTP /1.0的不之处的改进Q它严格全面Q既可以减少旉延迟、又节省了带宽。HTTP/1.1采用了内容协商机Ӟ选择最合适的用户的内容表现Ş式?<span style="display: none;"> w+; c#VH"w </span> <br /> <span style="display: none;"> d %%m'K? </span> <br /> 2.1 HTTP协议?span style="display: none;"> t9h0^ </span> <br /> <span style="display: none;"> hK?>J3X </span> <br /> HTTP是一个属于应用层的面向对象的协议Q由于其捗快速的方式Q适用于分布式媒体信息系l。它?990q提出,l过几年的用与发展Q得? 不断地完善和扩展。目前在WWW中用的是HTTP/1.0的第六版QHTTP/1.1的规范化工作正在q行之中Q而且HTTP-NG(Next Generation of HTTP)的徏议已l提出?span style="display: none;"> py:Jx0Ki9 </span> <br /> <span style="display: none;"> W @sQ[h </span> <br /> HTTP协议的主要特点可概括如下Q?span style="display: none;"> >]{5jDeEw </span> <br /> <span style="display: none;"> |Uz8KK?F </span> <br /> 1.支持客户/服务器模式?span style="display: none;"> ^tn%3K<x </span> <br /> 2.单快速:客户向服务器h服务Ӟ只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每U方法规定了客户与服务器联系的类型不同?span style="display: none;"> $#f5l,` </span> <br /> ׃HTTP协议单,使得HTTP服务器的E序规模,因而通信速度很快?span style="display: none;"> )Kdu3^ </span> <br /> 3.灉|QHTTP允许传输Lcd的数据对象。正在传输的cd由Content-Type加以标记?span style="display: none;"> G'o$mSOi) </span> <br /> 4.无连接:无连接的含义是限制每ơ连接只处理一个请求。服务器处理完客LhQƈ收到客户的应{后Q即断开q接。采用这U方式可以节省传输时间?span style="display: none;"> # g?K?'| </span> <br /> 5.无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺状态意味着如果后箋处理需要前面的信息Q则它必重传,q样可能D每次q接传送的数据量增大。另一斚wQ在服务器不需要先前信息时它的应答p快?span style="display: none;"> R#b6\o~) </span> <br /> <span style="display: none;"> DbN! 41]J </span> <br /> 2.2 HTTP协议的几个重要概?span style="display: none;"> }W'=XEE </span> <br /> <span style="display: none;"> vIqxI2(E) </span> <br /> 1.q接(Connection)Q一个传输层的实际环,它是建立在两个相互通讯的应用程序之间?span style="display: none;"> ah}Nu}tl< </span> <br /> 2.消息(Message)QHTTP通讯的基本单位,包括一个结构化的八元组序列q过q接传输?span style="display: none;"> om&oq>3Qe@ </span> <br /> 3.h(Request)Q一个从客户端到服务器的h信息包括应用于资源的Ҏ、资源的标识W和协议的版本号<span style="display: none;"> 6}G6S$M{ </span> <br /> 4.响应(Response)Q一个从服务器返回的信息包括HTTP协议的版本号、请求的状?例如"成功"?没找?)和文档的MIMEcd?span style="display: none;"> S+Wne* n </span> <br /> 5.资源(Resource)Q由URI标识的网l数据对象或服务?span style="display: none;"> c.(t.4*t]: </span> <br /> 6.实体(Entity)Q数据资源或来自服务资源的回映的一U特D表C方法,它可能被包围在一个请求或响应信息中。一个实体包括实体头信息和实体的本n内容?span style="display: none;"> Ro4iT+1 </span> <br /> 7.客户?Client)Q一个ؓ发送请求目的而徏立连接的应用E序?span style="display: none;"> !=dOK?d G </span> <br /> 8.用户代理(User agent)Q初始化一个请求的客户机。它们是览器、编辑器或其它用户工兗?span style="display: none;"> :X /r </span> <br /> 9.服务?Server)Q一个接受连接ƈ对请求返回信息的应用E序?span style="display: none;">  qH@.@(} </span> <br /> 10.源服务器(Origin server)Q是一个给定资源可以在其上ȝ或被创徏的服务器?span style="display: none;"> XvFyzuS </span> <br /> 11.代理(Proxy)Q一个中间程序,它可以充当一个服务器Q也可以充当一个客hQؓ其它客户机徏立请求。请求是通过可能的翻译在内部或经q传递到其它的服务器中。一个代理在发送请求信息之前,必须解释q且如果可能重写它?span style="display: none;"> O:xXZ/]& </span> <br /> 代理l常作ؓ通过防火墙的客户机端的门P代理q可以作Z个帮助应用来通过协议处理没有被用户代理完成的h?span style="display: none;"> 9Yzi4O* </span> <br /> 12.|关(Gateway)Q一个作为其它服务器中间媒介的服务器。与代理不同的是Q网x受请求就好象对被h的资源来说它是源服务器Q发求的客户机ƈ没有意识到它在同|关打交道?span style="display: none;"> !E$J,,TFk </span> <br /> |关l常作ؓ通过防火墙的服务器端的门P|关q可以作Z个协议翻译器以便存取那些存储在非HTTPpȝ中的资源?span style="display: none;">  ){NwD5 </span> <br /> 13.通道(Tunnel)Q是作ؓ两个q接中的中介程序。一旦激z,通道便被认ؓ不属于HTTP通讯Q尽通道可能是被一个HTTPh初始? 的。当被中l的q接两端关闭Ӟ通道便消失。当一个门?Portal)必须存在或中?Intermediary)不能解释中的通讯旉道被经怋 用?span style="display: none;"> l U:z8gX </span> <br /> 14.~存(Cache)Q反应信息的局域存储?span style="display: none;"> xCT5|=Uz </span> <br /> <span style="display: none;"> r^aDK?kJ </span> <br /> 2.3 HTTP协议的运作方?span style="display: none;"> n} dls </span> <br /> <span style="display: none;"> JFB:HCq_g </span> <br /> HTTP协议是基于请求/响应范式的。一个客h与服务器建立q接后,发送一个请求给服务器,h方式的格式ؓQ统一资源标识W、协议版本号Q后Ҏ MIME信息包括h修饰W、客h信息和可能的内容。服务器接到h后,l予相应的响应信息,其格式ؓ一个状态行包括信息的协议版本号、一个成功或错误 的代码,后边是MIME信息包括服务器信息、实体信息和可能的内宏V?span style="display: none;"> <fy=1k 6h </span> <br /> <span style="display: none;"> GP+CdYE </span> <br /> 许多HTTP通讯是由一个用户代理初始化的ƈ且包括一个申请在源服务器上资源的h。最单的情况可能是在用户代理(UA)和源服务?O)之间通过一个单独的q接来完?见图2-1)?span style="display: none;"> O~Dt%)!7Sv </span> <br /> <span style="display: none;"> G}h<7nf4 </span> <br /> ?-1<span style="display: none;"> eK{pScTsT\ </span> <br /> <span style="display: none;"> S%gB6 sO\o </span> <br /> 当一个或多个中介出现在请求/响应链中Ӟ情况变得复杂一些。中介由三种Q代?Proxy)、网?Gateway)和通道(Tunnel)。一 个代理根据URI(Uniform Resource Identifier)的绝Ҏ式来接受hQ重写全部或部分消息Q通过URI的标识把已格式化q的h发送到服务器。网x一个接收代理,作ؓ一些其? 服务器的上层Qƈ且如果必ȝ话,可以把请求翻译给下层的服务器协议。一个通道作ؓ不改变消息的两个q接之间的中l点。当通讯需要通过一个中?例如Q防 火墙{?或者是中介不能识别消息的内ҎQ通道l常被用?<span style="display: none;"> M \#qgo </span> <br /> <span style="display: none;"> {z [ptl==x </span> <br /> ?-2<span style="display: none;"> !lMq3nz\q </span> <br /> <span style="display: none;"> E*v-1g| </span> <br /> 上面的图2-2表明了在用户代理(UA)和源服务?O)之间有三个中?A,B和C)。一个通过整个铄h或响应消息必ȝq四个连接段。这个区 别是重要的,因ؓ一些HTTP通讯选择可能应用于最q的q接、没有通道的邻居,应用于链的终Ҏ应用于沿铄所有连接。尽图2-2是线性的Q每个参与? 都可能从事多重的、ƈ发的通讯。例如,B可能从许多客h接收h而不通过AQƈ且/或者不通过C把请求送到AQ在同时它还可能处理A的请求?span style="display: none;"> -P!U#uh </span> <br /> <span style="display: none;"> Ofl:OW </span> <br /> M针对不作为通道的汇聚可能ؓ处理h启用一个内部缓存。缓存的效果是请求/响应链被~短Q条件是沉K的参与者之一h一个缓存的响应作用于那个请求。下图说明结果链Q其条g是针对一个未被UA或A加缓存的hQB有一个经qC来自O的一个前期响应的~存拯?span style="display: none;"> kE_k;U\,jF </span> <br /> <span style="display: none;"> ~HbvCXC </span> <br /> ?-3<span style="display: none;"> b&aLxu9~ </span> <br /> <span style="display: none;"> pNG{gpp4= </span> <br /> 在Internet上,HTTP通讯通常发生在TCP/IPq接之上。缺省端口是TCP 80Q但其它的端口也是可用的。但qƈ不预C着HTTP协议在Internet或其它网l的其它协议之上才能完成。HTTP只预C着一个可靠的传输?span style="display: none;"> %:NdB </span> <br /> <span style="display: none;"> Q. Ajev </span> <br /> 以上要介l了HTTP协议的宏观运作方式,下面介绍一下HTTP协议的内部操作过E?span style="display: none;"> )*Nuy*\ </span> <br /> <span style="display: none;"> JQ0tjSv </span> <br /> 首先Q简单介l基于HTTP协议的客?服务器模式的信息交换q程Q如?-4所C,它分四个q程Q徏立连接、发送请求信息、发送响应信息、关闭连接?span style="display: none;"> -JG>b.9( </span> <br /> <span style="display: none;"> i]"WMIK{y </span> <br /> ?-4<span style="display: none;"> 5]{vIB </span> <br /> <span style="display: none;"> giW*y0| </span> <br /> 在WWW中,"客户"?服务?是一个相对的概念Q只存在于一个特定的q接期间Q即在某个连接中的客户在另一个连接中可能作ؓ服务器。WWW服务器运行时Q一直在TCP80端口(WWW的缺省端?监听Q等待连接的出现?span style="display: none;"> $T4N d)S0 </span> <br /> <span style="display: none;"> -SI0nHz </span> <br /> 下面Q讨论HTTP协议下客?服务器模式中信息交换的实现?  <span style="display: none;"> *D ;SvR~~ </span> <br /> <span style="display: none;"> , 1,>'Tz </span> <br /> 1.建立q接 <span style="display: none;"> [H]PO\E </span> <br /> q接的徏立是通过甌套接?Socket)实现的。客h开一个套接字q把它约束在一个端口上Q如果成功,q当于建立了一个虚拟文件。以后就可以在该虚拟文g上写数据q过|络向外传送?span style="display: none;"> m +RT`9?( </span> <br /> <span style="display: none;"> hV[6~i". </span> <br /> 2.发送请?span style="display: none;"> 2C(vj!/D% </span> <br /> 打开一个连接后Q客h把请求消息送到服务器的停留端口上,完成提出h动作?span style="display: none;"> }Yv1I74^% </span> <br /> HTTP/1.0  h消息的格式ؓQ?span style="display: none;"> !cNrK.wI </span> <br /> h消息=h?通用信息|h头|实体? CRLF[实体内容]<span style="display: none;"> d kWc>($ </span> <br /> h?Ҏ hURL HTTP版本受CRLF<span style="display: none;"> pW5BK?\ </span> <br /> Ҏ=GET|HEAD|POST|扩展Ҏ<span style="display: none;"> {Ax*1 ? </span> <br /> URL=协议名称+宿主?目录与文件名<span style="display: none;"> p5)PYBEa; </span> <br /> h行中的方法描q指定资源中应该执行的动作,常用的方法有GET、HEAD和POST。不同的h对象对应GET的结果是不同的,对应关系如下Q?span style="display: none;"> 'a>;gtj </span> <br /> 对象      GET的结?span style="display: none;"> ( E,c3R"C </span> <br /> 文g      文g的内?span style="display: none;"> }4[6 y+o </span> <br /> E序      该程序的执行l果<span style="display: none;"> >(GRb!XT </span> <br /> 数据库查询   查询l果<span style="display: none;"> ,Nz\1 </span> <br /> HEAD--要求服务器查找某对象的元信息Q而不是对象本w?span style="display: none;"> tdJCF$2) </span> <br /> POST--从客h向服务器传送数据,在要求服务器和CGI做进一步处理时会用到POSTҎ。POST主要用于发送HTML文本中FORM的内容,让CGIE序处理?span style="display: none;"> }&b + </span> <br /> 一个请求的例子为:<span style="display: none;"> u\0<-R K </span> <br /> GET <a target="_blank">http://networking.zju.edu.cn/zju/index.htm</a> HTTP/1.0<span style="display: none;"> $[($j10 </span> <br /> 头信息又UCؓ元信息,即信息的信息Q利用元信息可以实现有条件的h或应{??span style="display: none;"> D>{q2u= </span> <br /> h?-告诉服务器怎样解释本次hQ主要包括用户可以接受的数据cd、压~方法和语言{?span style="display: none;"> LV TPZ </span> <br /> 实体?-实体信息cd、长度、压~方法、最后一ơ修Ҏ间、数据有效期{?span style="display: none;"> D;~p#{. </span> <br /> 实体--h或应{对象本w?span style="display: none;"> VI7 G+q9+ </span> <br /> <span style="display: none;"> 1y25vcl </span> <br /> 3.发送响?span style="display: none;"> d$n?]#wd </span> <br /> 服务器在处理完客Lh之后Q要向客h发送响应消息?span style="display: none;"> =jvA55K?; </span> <br /> HTTP/1.0的响应消息格式如下:<span style="display: none;"> 9SJ/2} </span> <br /> 响应消息=状态行(通用信息头|响应头|实体? CRLF 〔实体内宏V?span style="display: none;"> jAN}7"0 </span> <br /> ???HTTP版本受状态码 原因叙述<span style="display: none;"> &'C>$,0K$ </span> <br /> 状态码表示响应cd<span style="display: none;"> zs91(@YIu </span> <br /> 1××  保留<span style="display: none;"> b !x: </span> <br /> 2××  表示h成功地接?span style="display: none;"> )jM q:M </span> <br /> 3××  为完成请求客户需q一步细化请?span style="display: none;"> nWA3I< </span> <br /> 4××  客户错误<span style="display: none;"> oCAp3~a </span> <br /> 5××  服务器错?<span style="display: none;"> kaxl,2 </span> <br /> 响应头的信息包括Q服务程序名Q通知客户h的URL需要认证,h的资源何时能使用?span style="display: none;"> ~e$ P. </span> <br /> <span style="display: none;"> Vf2tJY </span> <br /> 4.关闭q接<span style="display: none;"> 82Eog} </span> <br /> 客户和服务器双方都可以通过关闭套接字来l束TCP/IP对话<span style="display: none;"> #bb[[zrKJ </span> <br /> <span style="display: none;"> %NEsWam` </span> <br /> 二.http协议h头格式分?span style="display: none;"> No&G=Fo2 </span> <br /> <span style="display: none;"> yyTF\2r </span> <br /> http协议的请求头分ؓ10个部分?span style="display: none;"> D\!Rg3Y4 </span> <br /> <span style="display: none;"> $Aic/|MZL </span> <br /> 1.From:<span style="display: none;"> #w(uX </span> <br /> 以internet邮g的Ş式,q一字段l出了正在请求的用户的名字。这一字段也许被用来登陆和一U存取保护的不安全Ş式。这一字段的解释是代表被给定用L要求正在被执行,q个用户接受被执行方法的回应?span style="display: none;"> R. uuuu` </span> <br /> q一字段里的因特|邮件地址q一定要对发求的L回应.例如Q当一个请求正通过一个网xQ开始的发布者的地址应该被用?span style="display: none;"> H1I]v `w, </span> <br /> 假如能的话,邮g地址应该时一个有效的邮g地址而不它实际上是否是一个internet邮g地址?span style="display: none;"> b+r\P{Lj:p </span> <br /> <span style="display: none;"> DgaK|vkH </span> <br /> 2.Accept:<span style="display: none;"> \A2op?{ </span> <br /> q一字段包含了一个分隔的hҎ列表Q它在q个h的回应中被接受。这一字段可能会根据RCFC822被包装成几行Qƈ且这个字D不仅仅一ơ的发生也是被接受的Q好像所有的入口已经在一个域U了。列表中每个入口的模式如下:<span style="display: none;"> #tTxEZq< </span> <br /> <field> =   Accept: <entry> *[ , <entry> ]<span style="display: none;"> [J%u-$)# </span> <br /> <entry> =   <content type> *[ ; <param> ]<span style="display: none;"> FW1(| s </span> <br /> <param> =   <attr> = <float><span style="display: none;"> DLRMq)`, </span> <br /> <attr>   =   q / mxs / mxb<span style="display: none;"> >KDzFFON- </span> <br /> <float> =   <ANSI-C floating point text represntation><span style="display: none;"> uKfRMh </span> <br /> 注意在上q语法中分号的优先高于逗号Q这是ؓ了符合多用途的忘记邮g扩充协议?span style="display: none;"> }KYAf5 </span> <br /> 记入没有Accept字段出现Q那么假定无格式正文和html正文被接受?span style="display: none;"> D@ 3i `q- </span> <br /> Example<span style="display: none;"> f)P<n; >q </span> <br /> Accept: text/plain, text/html<span style="display: none;"> LDf*m  </span> <br /> Accept: text/x-dvi; q=.8; mxb=100000; mxt=5.0, text/x-c<span style="display: none;"> ;"lpX-\ </span> <br /> Z节省旉Qƈ且也允许客户接受他们可能不会意识到的content type一个星号也许被使用在下面的地方Qeither the second half of the content-type value, or both halves。这仅仅被应用于AcceptQ而且不是对于content-type field of course的?span style="display: none;"> [F }l~Ac </span> <br /> Example<span style="display: none;"> )]4Q%aO2= </span> <br /> Accept: *.*, q=0.1<span style="display: none;"> cU/vDY B </span> <br /> Accept: audio/*, q=0.2<span style="display: none;"> F* >Kbn </span> <br /> Accept: audio/basic q=1<span style="display: none;"> XS>l+WJ </span> <br /> 上面的例子可以这栯释:假如你有基本音频Q那么传送它Q否则传送给我一些其他的声音Q或者不能那样作Q那么仅仅给我你所得到的?span style="display: none;"> 4X7gc$DZK?</span> <br /> Type parameters<span style="display: none;"> $4 wDB/ </span> <br />   在(content typeQ中参数对于描述册Q颜色深度等{是特别重要的。他们将允许一个客h在Accept字段中指定它的设备的册。这也许允许server在传? 旉过减少一个图片的resultion来大大的节约。ƈ且一个更适合的用h间的黑白图象被选中而不是给客户一个彩色图片来转换成单色的?span style="display: none;"> C\P#.0yH </span> <br /> These parameters are to be specified when types are registered.. @@ TBS.Sugestions include the following. Please feed back any references to existing improved abbreviations for these:<span style="display: none;"> evw4rr(?K </span> <br /> 下面q些参数是当cd被注册时而被具体详细说明的?span style="display: none;"> "RawKOu[y </span> <br />   Dpi<span style="display: none;"> ZO7a#&}i </span> <br />   Dots per inch: pixels per inch [cm?!] <span style="display: none;"> j)g a[ </span> <br />   pxmax <span style="display: none;"> n$vWEhZZ </span> <br />   Maximum width in pixels (image or video) <span style="display: none;"> byOQ>] </span> <br />   pymax <span style="display: none;"> E7aD:W G^ </span> <br />   Maximum height in pixels <span style="display: none;"> GY`GKA </span> <br />   bits <span style="display: none;"> B<$Tp4W(Tx </span> <br />   Bits per sample (sound) or pixels (graphics) <span style="display: none;"> 6Cen#F6u </span> <br />   mchrome <span style="display: none;"> =/!d8vi" </span> <br />   Grayscale or black and white (no value) <span style="display: none;"> K~qEz;o </span> <br />   sps <span style="display: none;"> Mdi-*R~ </span> <br />   Samples (sound) or frames (video) per second <span style="display: none;"> <zi>[6"j7o </span> <br />   Length <span style="display: none;"> W S=< </span> <br />   Total size of object in bytes [bits?] <span style="display: none;"> SM&$Li('U </span> <br /> <span style="display: none;"> G uK{qeA </span> <br /> 3.Accept-Encoding:<span style="display: none;"> f 39 w </span> <br /> 和Accept一P但是仅列Z在响应中是可接受的Content-Encoding types<span style="display: none;"> `)e+:K,/M </span> <br /> <field> =   Accept-Encoding: <entry> *[ , <entry> ]<span style="display: none;"> >$w2k|F </span> <br /> <entry> =   <content transfer encoding> *[ , <param> ]<span style="display: none;"> Dg(lX,&1} </span> <br /> ExampleQ?span style="display: none;"> P VgQI" </span> <br /> Accept-Encoding: x-compress; x-zip<span style="display: none;"> Xuf0T$c </span> <br /> <span style="display: none;"> qHEetg<0 </span> <br /> 4。Accept-Language:<span style="display: none;"> igT LH3Jt </span> <br /> 和Accept一样但是列Z在响应中更好的Language values。在一个未详细说明的语a中一个响应不是非法的?span style="display: none;"> TPK,#Hm </span> <br /> <span style="display: none;"> <WKijp\| </span> <br /> 5QUser-AgentQ?span style="display: none;"> 3Nh]xS/k5 </span> <br /> 假如存在的话Q这一行给Z被原始用户用的软gE序。这是ؓ了统计和protocol violations的追t而给出的。第一个白色空格划定了单词必须是Y件品名有一个可选的斜线和版本说明。其他Ş成了用户代理的部分品也许被作ؓ分开的单词被安排?span style="display: none;"> 6mj%K?| </span> <br /> <field>   =   User-Agent: <product>+<span style="display: none;"> t~-#%g>! </span> <br /> <product> =   <word> [/<version>]<span style="display: none;"> .]0HNU@D </span> <br /> <version> =   <word><span style="display: none;"> | \JffKfv </span> <br /> Example:<span style="display: none;"> x/dpf<qA </span> <br /> User-Agent: LII-Cello/1.0 libwww/2.5<span style="display: none;"> &$Kt=k# </span> <br /> <span style="display: none;"> \B:OY$ fR </span> <br /> 6QReferer:<span style="display: none;"> > 7j[,[9v </span> <br /> q个可选的header field允许客户详细说明Qؓ了server的好处,文档的地址或者文档中的元素,URI通过文档的地址或者文档中的元素在h中被获得?span style="display: none;"> Rg{<=nP </span> <br /> q允怸个服务器来生向后对文档的链接,它允许坏链接Zl护而被跟踪?span style="display: none;"> bP~^89bv~ </span> <br /> 假如一个部分的URI被给出那么它应该被解析到相应的请求对象的URI?span style="display: none;"> i0ZBx#'TN </span> <br /> Example:<span style="display: none;"> 7@gT" </span> <br /> Referer: <a target="_blank">http://www.w3.org/hypertext/DataSources/Overview.html</a><span style="display: none;"> K?%k|T# </span> <br /> <span style="display: none;"> m?8e<Z </span> <br /> 7QAuthorization:<span style="display: none;"> U8 9( </span> <br /> 假如q一行存在的话它包含了授权信息。格式也是被指定的。这一字段的格式是在可扩展的Ş式。第一个单词是一个用中的被授权的系l的规范?span style="display: none;"> mveJfL'*J </span> <br /> Basic<span style="display: none;"> 2{PmtN0 </span> <br /> Specification for current one implemented by AL Sep 1993.<span style="display: none;"> D#Kol/3 </span> <br />   PGP/PEM EncryptionQpgp/增强的加密电子邮?密码术)<span style="display: none;"> i:z*%iTcE </span> <br />   People at NCSA are designing a PGP/PEM based protection system.<span style="display: none;"> O]x<G~ </span> <br />   User/Password scheme<span style="display: none;"> `{"RKoam </span> <br />   Authorization: user fred:mypassword<span style="display: none;"> iS@y7i&k0 </span> <br />   设计名是"user"。第二个单词是一个用户名Q有一个被冒号分开的可选的密码Q就好像在ftp的URL语法一栗没有密码的话这提供了一个非怽U的安全保证Q有了密码,它提供了一个低U安全保证作为未定义的FTP,Telnet{等?span style="display: none;"> ayO8X[ </span> <br />   Koreros<span style="display: none;"> SOu56'kh6z </span> <br />   Authorization: kerberos kerberos authentications parameters<span style="display: none;"> pmQvKlN </span> <br />   Kerberos的确认参数格式被具体指定?span style="display: none;"> ,\#oSr^M </span> <br /> <span style="display: none;"> r!{L {fPK?</span> <br />   8QChargeTo:<span style="display: none;"> %\:-!9Jqp) </span> <br />   假如q一行存在地话,它包括了被请求的Ҏ的程序的帐户信息。格式是TBS<span style="display: none;"> 9{u(hx.G>n </span> <br />   QTo Be SpecifiedQ这个字D늚格式必须是在扩展模式的。第一个单词以一个namespaces的说明开始。这和扩展URLㄒ搴芟瘛QE懊挥衝amespaces被定义。Namespaces见被随着注册认而注册?span style="display: none;"> ~Z0_KIVv </span> <br />   q行的其余部分的格式是一个系l有关的函数但是它被推荐q包含了一个被用户认得本ơ事务的最大花费和一个花费单元?span style="display: none;"> $FqzE7adO </span> <br />   If-Modified-Since: date<span style="display: none;"> X+P YW </span> <br />   q个h头被随着getҎ使用使之有条件。假如请求文档直到被定义q没改变得花那么文档不会被发送,但是会有一个Not Modified 304 回应?span style="display: none;"> H=uPqUMs </span> <br />   q个字段的格式和日期的一栗?span style="display: none;">  gnsSrW </span> <br />   <span style="display: none;"> V. jVy!Lut </span> <br />   9.Pragma:<span style="display: none;"> ?R\va]Nh6 </span> <br />   语法和其它的http中的多值字D一P像Accept字段Q名以上是一个冒号分开的入口列表对他来说可选的参数是被汉欧挚摹?<span style="display: none;"> ;BkR;v(cR& </span> <br />   Pragma 指示应该被服务器理解Q对它来说是相对的,例如Q一个代理服务器当前仅仅一个pragma被定义:no-cache <span style="display: none;"> _G;Yq~ ` </span> <br />   当当前的代理不应该从~存q回一个文档时Q即使它q没有被到期Q但是它d该从实际存在地服务器h文档?span style="display: none;"> 9WZb|Wn </span> <br />   Pragma应该被通过代理实现Q甚至他们也许对代理本n有意义。当h不得不通过许多代理Ӟq在事g中是必须的,而且pragma应该队所有的他们有效?span style="display: none;"> Qbd. 6<9 </span> <br /> <span style="display: none;"> ST&+ ZJ </span> <br /> 以下是用jetcar在亦多下载网l吸血鬼的信息<span style="display: none;"> i?u[St} </span> <br /> <span style="display: none;"> vIQ[#vPP </span> <br /> Thu Mar 14 14:36:56 2002 正在q接 202.113.29.120 [IP=202.113.29.120:80]<span style="display: none;"> 8! QGw4Q </span> <br /> //正在q接LQ解析ip地址<span style="display: none;"> >n.y@yA </span> <br /> Thu Mar 14 14:36:57 2002 已连?<span style="display: none;"> @Y\5 m0M </span> <br /> Thu Mar 14 14:36:57 2002 GET /index.dhtml?op=download&ino=2941&type=file HTTP/1.1 //h行,表示用get方式取得文gQƈ且是HTTP1.1版本<span style="display: none;"> !v[G3 </span> <br /> Thu Mar 14 14:36:57 2002 HOST: 202.113.29.120 //L?span style="display: none;"> aB13 hTE </span> <br /> Thu Mar 14 14:36:57 2002 ACCEPT: */*   //accept字段Q接受的数据cd<span style="display: none;"> L=G|8wH+d </span> <br /> Thu Mar 14 14:36:57 2002 Referer: <a target="_blank">http://202.113.29.120//</a>从该|址转发而来<span style="display: none;"> 7I 8%+ |rV </span> <br /> Thu Mar 14 14:36:57 2002 User-Agent: Mozilla/4.0 (compatible; MSIE 5.00; Windows 98)//客户端标?span style="display: none;"> R0`AH-tJ </span> <br /> Thu Mar 14 14:36:57 2002 Pragma: no-cache //参数Q表CZ以前的服务器兼容<span style="display: none;"> 9o[B-. </span> <br /> Thu Mar 14 14:36:57 2002 Cache-Control: no-cache //不用缓?span style="display: none;"> -o51QTM </span> <br /> Thu Mar 14 14:36:57 2002 Connection: close //表示非持l性连接?span style="display: none;"> [(OIW%:G </span> <br /> 以下为response字段<span style="display: none;"> \@|Su~$ </span> <br /> Thu Mar 14 14:36:58 2002 HTTP/1.1 302 Found<span style="display: none;"> bGJ' ,;cM, </span> <br /> 服务器用HTTP/1.0协议Q状态|Status CodeQؓ200Q状态ؓOKQ表C文件可以读?span style="display: none;"> :nG?g& </span> <br /> Thu Mar 14 14:36:58 2002 Date: Thu, 14 Mar 2002 06:52:16 GMT//现在的时_用格林威L间表C?span style="display: none;"> M"!P5;+ </span> <br /> Thu Mar 14 14:36:58 2002 Server: Apache/1.3.19 (Unix) PHP/4.0.4pl1<span style="display: none;"> X`zFgF\#| </span> <br /> //服务器类?span style="display: none;"> g<}9' PUJ </span> <br /> Thu Mar 14 14:36:58 2002 X-Powered-By: PHP/4.0.4pl1<span style="display: none;"> K[h)f} </span> <br /> Thu Mar 14 14:36:58 2002 Set-Cookie: PHPSESSID=6cf938f3c6ce551971c787ac8b3c0f5b; path=/<span style="display: none;"> Az4Vm/>e? </span> <br /> Thu Mar 14 14:36:58 2002 Expires: Thu, 19 Nov 1981 08:52:00 GMT//h文档q期旉<span style="display: none;"> 4bVqy~]6& </span> <br /> Thu Mar 14 14:36:58 2002 Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0<span style="display: none;"> spYOmo)1 </span> <br /> Thu Mar 14 14:36:58 2002 Pragma: no-cache<span style="display: none;">  0Vzzp(:? </span> <br /> Thu Mar 14 14:36:58 2002 Content-Disposition: inline; filename=netvampire33.zip<span style="display: none;"> e*M?W#*j </span> <br /> Thu Mar 14 14:36:58 2002 Location: <a href="ftp://202.113.29.120/pub/Dos_Windows/Internet/Client/Download/Net" target="_blank">ftp://202.113.29.120/pub/Dos_Windows/Internet/Client/Download/Net</a> Vampire/3.3/netvampire33.zip<span style="display: none;"> fP3 M"z </span> <br /> Thu Mar 14 14:36:58 2002 Connection: close<span style="display: none;"> uyFam:IvKB </span> <br /> Thu Mar 14 14:36:58 2002 Transfer-Encoding: chunked<span style="display: none;"> M1*;oO]8u </span> <br /> Thu Mar 14 14:36:58 2002 Content-Type: text/html<span style="display: none;"> <#Ukle? @ </span> <br /> <span style="display: none;"> }AHY7M </span> <br /> 备注Q服务器q回的各c错?span style="display: none;"> ee4K?{] </span> <br /> 当服务器响应Ӟ其状态行的信息ؓHTTP的版本号Q状态码Q及解释状态码的简单说明。现?cȝ态码详细列出Q?<span style="display: none;"> FkceU Yu </span> <br /> ?客户斚w?<span style="display: none;"> 3V2)#\2ux </span> <br /> 100  l箋 <span style="display: none;"> |D-N4Qd8F </span> <br /> 101  交换协议 <span style="display: none;"> `^)pF~g;> </span> <br /> ?成功 <span style="display: none;"> +~f : b\6 </span> <br /> 200  OK <span style="display: none;"> .4s f{ </span> <br /> 201  已创?<span style="display: none;"> R9K?m(}& </span> <br /> 202  接收 <span style="display: none;"> U'y fDLt </span> <br /> 203  非认证信?<span style="display: none;"> 1i')$R </span> <br /> 204  无内?<span style="display: none;"> ;;8 ?# A </span> <br /> 205  重置内容 <span style="display: none;"> X|* H Z+ </span> <br /> 206  部分内容 <span style="display: none;"> #Bj(fDd4q </span> <br /> ?重定?<span style="display: none;"> > *LK[o </span> <br /> 300  多\选择 <span style="display: none;"> VN}mdKh'g </span> <br /> 301  怹转移 <span style="display: none;"> F@9E`:+> </span> <br /> 302  暂时转移 <span style="display: none;"> RT'{f  </span> <br /> 303  参见其它 <span style="display: none;"> X( mQL" </span> <br /> 304  未修改(Not ModifiedQ?<span style="display: none;"> IAa5 Y{; </span> <br /> 305  使用代理 <span style="display: none;"> tFyt]hS </span> <br /> ?客户斚w?<span style="display: none;"> aNwP?~ Y6T </span> <br /> 400  错误hQBad RequestQ?<span style="display: none;"> YwCTYQ{ </span> <br /> 401  未认?<span style="display: none;"> n sth,S </span> <br /> 402  需要付?<span style="display: none;"> KHq0iA2;4 </span> <br /> 403  止QForbiddenQ?<span style="display: none;"> "yLd]q% </span> <br /> 404  未找刎ͼNot FoundQ?<span style="display: none;"> e n.q </span> <br /> 405  Ҏ不允?<span style="display: none;"> T6T<kUUB </span> <br /> 406  不接?<span style="display: none;"> Kv_W^z$ </span> <br /> 407  需要代理认?<span style="display: none;"> >/r+zY ~Kk </span> <br /> 408  h时 <span style="display: none;"> ,$"K??;sj< </span> <br /> 409  冲突 <span style="display: none;"> _yOot^0^ </span> <br /> 410  p| <span style="display: none;"> o3X4.A2 </span> <br /> 411  需要长?<span style="display: none;"> ,V /^N= </span> <br /> 412  条gp| <span style="display: none;"> bCS}FR </span> <br /> 413  h实体太大 <span style="display: none;"> +l7[V </span> <br /> 414  hURI太长 <span style="display: none;"> % fBJgp W- </span> <br /> 415  不支持媒体类?<span style="display: none;"> B3KB}02" </span> <br /> ?服务器错?<span style="display: none;">  77Fj/c </span> <br /> 500  服务器内部错?<span style="display: none;"> Xa:5$gZ </span> <br /> 501  未实玎ͼNot ImplementedQ?<span style="display: none;"> MCwjQ94 </span> <br /> 502  |关p| <span style="display: none;"> [Y 1~|E </span> <br /> 504  |关时 <span style="display: none;"> 2"kB#cuxl </span> <br /> 505  HTTP版本不支?<span style="display: none;"> jP(.5#<b~ </span> <br /> <span style="display: none;"> &YZe_</span> <img src ="http://www.tkk7.com/lvq810/aggbug/210180.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/lvq810/" target="_blank">lvq810</a> 2008-06-23 22:47 <a href="http://www.tkk7.com/lvq810/articles/210180.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JavaScript |页事g[转]http://www.tkk7.com/lvq810/articles/208745.htmllvq810lvq810Tue, 17 Jun 2008 17:51:00 GMThttp://www.tkk7.com/lvq810/articles/208745.htmlhttp://www.tkk7.com/lvq810/comments/208745.htmlhttp://www.tkk7.com/lvq810/articles/208745.html#Feedback0http://www.tkk7.com/lvq810/comments/commentRss/208745.htmlhttp://www.tkk7.com/lvq810/services/trackbacks/208745.html closed 对象.closed 对象H口是否已关闭true/false
clearTimeout(对象) 清除已设|的setTimeout对象
clearInterval(对象) 清除已设|的setInterval对象
confirm("提示信息") 弹出认框,定q回true取消q回false
cursor:样式 更改鼠标样式 hand crosshair text wait help default auto e/s/w/n-resize
event.clientX q回最后一ơ点击鼠标X坐标|
event.clientY q回最后一ơ点击鼠标Y坐标|
event.offsetX q回当前鼠标悬停X坐标?br /> event.offsetY q回当前鼠标悬停Y坐标?br />
document.write(document.lastModified) |页最后一ơ更新时?br /> document.ondblclick=x 当双击鼠标生事?br /> document.onmousedown=x 单击鼠标键生事?br />
document.body.scrollTop; q回和设|当前竖向滚动条的坐标|M函数配合,
document.body.scrollLeft; q回和设|当前横向滚动务的坐标|M函数配合Q?br /> document.title document.title="message"; 当前H口的标题栏文字
document.bgcolor document.bgcolor="颜色?; 改变H口背景颜色
document.Fgcolor document.Fgcolor="颜色?; 改变正文颜色
document.linkcolor document.linkcolor="颜色?; 改变联接颜?br /> document.alinkcolor document.alinkcolor="颜色?; 改变正点击联接的颜色
document.VlinkColor document.VlinkColor="颜色?; 改变已访问联接的颜色
document.forms.length q回当前form表单?br /> document.anchors.length q回当前锚的数?br /> document.links.length q回当前联接的数量
document.onmousedown=x 单击鼠标触发事g
document.ondblclick=x 双击鼠标触发事g
defaultStatus window.status=defaultStatus; 状态栏讄默认昄

function function xx(){...} 定义函数
isNumeric 判断是否是数?br /> innerHTML xx=对象.innerHTML 输入某对象标{中的html源代?br /> innerText divid.innerText=xx 以div定位以id命名的对象D为XX

location.reload(); 使本刷斎ͼtarget可等于一个刷新的|页

Math.random() 随机涉|,只能??之间的数,如果要得到其它数,可以?10,再取?br /> Math.floor(number) 对象number转ؓ整数Q舍取所有小?br /> Math.min(1,2) q回1,2哪个?br /> Math.max(1,2) q回1,2哪个?br />
navigator.appName q回当前览器名U?br /> navigator.appVersion q回当前览器版本号
navigator.appCodeName q回当前览器代码名?br /> navigator.userAgent q回当前览器用户代标志

onsubmit onsubmit="return(xx())" 使用函数q回?br /> opener opener.document.对象 控制原打开H体对象

prompt xx=window.prompt("提示信息","预定?); 输入语句
parent parent.框架?对象 控制框架面

return return false q回?br /> random 随机参数Q??之间Q?br /> reset() form.reset(); 使form表单内的数据重置

split("") string.split("") string对象字符以逗号隔开
submit() form对象.submit() 使form对象提交数据

String对象?charAt(x)对象 反回指定对象的第多少位的字母
lastIndexOf("string") 从右到左询找指定字符Q没有返?1
indexOf("string") 从左到右询找指定字符Q没有返?1
LowerCase() 对象全部{为小?
UpperCase() 对象全部{为大?br /> substring(0,5) string.substring(x,x) q回对象中从0?的字W?br /> setTimeout("function",time) 讄一个超时对?br /> setInterval("function",time) 讄一个超时对?br />
toLocaleString() x.toLocaleString() 从x旉对象中获取时_以字W串型式存在
typeof(变量? 查变量的cdQ值有QString,Boolean,Object,Function,Underfined

window.event.button==1/2/3 鼠标键左键等?右键{于2两个键一h?
window.screen.availWidth q回当前屏幕宽度(I白I间)
window.screen.availHeight q回当前屏幕高度(I白I间)
window.screen.width q回当前屏幕宽度(分L率?
window.screen.height q回当前屏幕高度(分L率?
window.document.body.offsetHeight; q回当前|页高度
window.document.body.offsetWidth; q回当前|页宽度
window.resizeTo(0,0) 窗口设|宽?br /> window.moveTo(0,0) 窗口移到某位置
window.focus() 使当前窗口获得焦?br /> window.scroll(x,y) H口滚动条坐标,y控制上下UdQ须与函数配?br /> window.open() window.open("地址","名称","属?)
属?toolbar(工具?,location(地址?,directions,status(状态栏),
menubar (菜单?,scrollbar(滚动?,resizable(改变大小), width(?,height(?,fullscreen(? ?,scrollbars(全屏时无滚动条无??channelmode(宽屏),left(打开H口x坐标),top(打开H口y坐标)
window.location = 'view-source:' + window.location.href 应用事g查看|页源代?


a=new Date(); //创徏aZ个新的时期对?br /> y=a.getYear(); //y的gؓ从对象a中获取年份?两位数年?br /> y1=a.getFullYear(); //获取全年份数 四位数年?br /> m=a.getMonth(); //获取月䆾?br /> d=a.getDate(); //获取日期?br /> d1=a.getDay(); //获取当前星期?br /> h=a.getHours(); //获取当前时?br /> m1=a.getMinutes(); //获取当前分钟?br /> s=a.getSeconds(); //获取当前U钟?br />

对象.style.fontSize="文字大小";
单位Qmm/cm/in英寸/pc?pt?px象素/em文字?br /> 1in=1.25cm
1pc=12pt
1pt=1.2px(800*600分辩率下)

文本字体属性:
fontSize大小
family字体
color颜色
fontStyle风格Q取gؓnormal一?italic斜体,oblique斜体且加_?br /> fontWeight加粗,取gؓ100?00不等,900最_?light,normal,bold
letterSpacing间距,更改文字间距?取gؓ,1pt,10px,1cm
textDecoration:文字修饰;取?none不修?underline下划U?overline上划U?br /> background:文字背景颜色,
backgroundImage:背景囄,取gؓ囄的插入\?br />

点击|页正文函数调用触发器:

1.onClick 当对象被点击
2.onLoad 当网|开,只能书写在body?br /> 3.onUnload 当网关闭或d?只能书写在body?br /> 4.onmouseover 当鼠标悬于其上时
5.onmouseout 当鼠标离开对象?br /> 6.onmouseup 当鼠标松开
7.onmousedown 当鼠标按下键
8.onFocus 当对象获取焦Ҏ
9.onSelect 当对象的文本被选中?br /> 10.onChange 当对象的内容被改?br /> 11.onBlur 当对象失ȝ?br /> onsubmit=return(ss())表单调用时返回的?br />
直线 border-bottom:1x solid black
虚线 border-bottom:1x dotted black
点划U?border-bottom:2x dashed black
双线 border-bottom:5x double black
槽状 border-bottom:1x groove black
脊状 border-bottom:1x ridge black

lvq810 2008-06-18 01:51 发表评论
]]>
Http各个状态码含义[转]http://www.tkk7.com/lvq810/articles/208399.htmllvq810lvq810Mon, 16 Jun 2008 10:24:00 GMThttp://www.tkk7.com/lvq810/articles/208399.htmlhttp://www.tkk7.com/lvq810/comments/208399.htmlhttp://www.tkk7.com/lvq810/articles/208399.html#Feedback0http://www.tkk7.com/lvq810/comments/commentRss/208399.htmlhttp://www.tkk7.com/lvq810/services/trackbacks/208399.html 1**Q请求收刎ͼl箋处理
2**Q操作成功收刎ͼ分析、接?br /> 3**Q完成此h必须q一步处?br /> 4**Q请求包含一个错误语法或不能完成
5**Q服务器执行一个完全有效请求失?br />
100 Continue 初始的请求已l接受,客户应当l箋发送请求的其余部分。(HTTP 1.1斎ͼ

101 Switching Protocols 服务器将遵从客户的请求{换到另外一U协议(HTTP 1.1斎ͼ

200 OK 一切正常,对GET和POSTh的应{文档跟在后面?br />
201 Created 服务器已l创Z文档QLocation头给Z它的URL?br />
202 Accepted 已经接受hQ但处理未完成?br />
203 Non-Authoritative Information 文档已经正常地返回,但一些应{头可能不正,因ؓ使用的是文档的拷贝(HTTP 1.1斎ͼ?br />
204 No Content 没有新文档,览器应该l显C原来的文档。如果用户定期地h面Q而Servlet可以定用户文档_斎ͼq个状态代码是很有用的?br />
205 Reset Content 没有新的内容Q但览器应该重|它所昄的内宏V用来强制浏览器清除表单输入内容QHTTP 1.1斎ͼ?br />
206 Partial Content 客户发送了一个带有Range头的GEThQ服务器完成了它QHTTP 1.1斎ͼ?br />
300 Multiple Choices 客户h的文档可以在多个位置扑ֈQ这些位|已l在q回的文档内列出。如果服务器要提Z先选择Q则应该在Location应答头指明?br />
301 Moved Permanently 客户h的文档在其他地方Q新的URL在Location头中l出Q浏览器应该自动地访问新的URL?br />
302 Found cM?01Q但新的URL应该被视Z时性的替代Q而不是永久性的。注意,在HTTP1.0中对应的状态信息是“Moved Temporatily”?br /> 出现该状态代码时Q浏览器能够自动讉K新的URLQ因此它是一个很有用的状态代码?br />
注意q个状态代码有时候可以和301替换使用。例如,如果览器错误地hhttp://host/~userQ缺了后面的斜杠)Q有的服务器q回301Q有的则q回302?br />
严格地说Q我们只能假定只有当原来的请求是GET时浏览器才会自动重定向。请参见307?br />
303 See Other cM?01/302Q不同之处在于,如果原来的请求是POSTQLocation头指定的重定向目标文档应该通过GET提取QHTTP 1.1斎ͼ?br />
304 Not Modified 客户端有~冲的文档ƈ发出了一个条件性的hQ一般是提供If-Modified-Since头表C客户只x指定日期更新的文档)。服务器告诉客户Q原来缓冲的文档q可以l用?br />
305 Use Proxy 客户h的文档应该通过Location头所指明的代理服务器提取QHTTP 1.1斎ͼ?br />
307 Temporary Redirect ?02QFoundQ相同。许多浏览器会错误地响应302应答q行重定向,即原来的请求是POSTQ即使它实际上只能在POSTh的应{是303? 才能重定向。由于这个原因,HTTP 1.1新增?07Q以便更加清除地区分几个状态代码:当出?03应答Ӟ览器可以跟随重定向的GET和POSThQ如果是307应答Q则览器只 能跟随对GETh的重定向。(HTTP 1.1斎ͼ

400 Bad Request h出现语法错误?br />
401 Unauthorized 客户试图未经授权讉K受密码保护的面。应{中会包含一个WWW-Authenticate_览器据此显C用户名?密码对话框,然后在填写合适的Authorization头后再次发出h?br />
403 Forbidden 资源不可用。服务器理解客户的请求,但拒l处理它。通常׃服务器上文g或目录的权限讄D?br />
404 Not Found 无法扑ֈ指定位置的资源。这也是一个常用的应答?br />
405 Method Not Allowed hҎQGET、POST、HEAD、Delete、PUT、TRACE{)Ҏ定的资源不适用。(HTTP 1.1斎ͼ

406 Not Acceptable 指定的资源已l找刎ͼ但它的MIMEcd和客户在Accpet头中所指定的不兼容QHTTP 1.1斎ͼ?br />
407 Proxy Authentication Required cM?01Q表C客户必dl过代理服务器的授权。(HTTP 1.1斎ͼ

408 Request Timeout 在服务器许可的等待时间内Q客户一直没有发ZQ何请求。客户可以在以后重复同一h。(HTTP 1.1斎ͼ

409 Conflict 通常和PUTh有关。由于请求和资源的当前状态相冲突Q因此请求不能成功。(HTTP 1.1斎ͼ

410 Gone 所h的文档已l不再可用,而且服务器不知道应该重定向到哪一个地址。它?04的不同在于,q回407表示文档怹地离开了指定的位置Q?04表示׃未知的原因文档不可用。(HTTP 1.1斎ͼ

411 Length Required 服务器不能处理请求,除非客户发送一个Content-Length头。(HTTP 1.1斎ͼ

412 Precondition Failed h头中指定的一些前提条件失败(HTTP 1.1斎ͼ?br />
413 Request Entity Too Large 目标文档的大超q服务器当前愿意处理的大。如果服务器认ؓ自己能够E后再处理该hQ则应该提供一个Retry-After_HTTP 1.1斎ͼ?br />
414 Request URI Too Long URI太长QHTTP 1.1斎ͼ?br />
416 Requested Range Not Satisfiable 服务器不能满_户在h中指定的Range头。(HTTP 1.1斎ͼ

500 Internal Server Error 服务器遇C意料不到的情况,不能完成客户的请求?br />
501 Not Implemented 服务器不支持实现h所需要的功能。例如,客户发出了一个服务器不支持的PUTh?br />
502 Bad Gateway 服务器作为网x者代理时Qؓ了完成请求访问下一个服务器Q但该服务器q回了非法的应答?br />
503 Service Unavailable 服务器由于维护或者负载过重未能应{。例如,Servlet可能在数据库q接池已满的情况下返?03。服务器q回503时可以提供一个Retry-After头?br />
504 Gateway Timeout ׃Z理或|关的服务器使用Q表CZ能及时地从远E服务器获得应答。(HTTP 1.1斎ͼ

505 HTTP Version Not Supported 服务器不支持h中所指明的HTTP版本。(HTTP 1.1斎ͼ
==================================================================================
英文版:

100QContinue
101QSwitching Protocols
102QProcessing

200QOK
201QCreated
202QAccepted
203QNon-Authoriative Information
204QNo Content
205QReset Content
206QPartial Content
207QMulti-Status

300QMultiple Choices
301QMoved Permanently
302QFound
303QSee Other
304QNot Modified
305QUse Proxy
306Q?Unused)
307QTemporary Redirect

400QBad Request
401QUnauthorized
402QPayment Granted
403QForbidden
404QFile Not Found
405QMethod Not Allowed
406QNot Acceptable
407QProxy Authentication Required
408QRequest Time-out
409QConflict
410QGone
411QLength Required
412QPrecondition Failed
413QRequest Entity Too Large
414QRequest-URI Too Large
415QUnsupported Media Type
416QRequested range not satisfiable
417QExpectation Failed
422Q? Unprocessable Entity  QThe 422 (Unprocessable Entity) status code means the server understands the content type of the request entity (hence a 415(Unsupported Media Type) status code is inappropriate), and the syntax of the request entity is correct (thus a 400 (Bad Request) status code is inappropriate) but was unable to process the contained instructions. For example, this error condition may occur if an XML request body contains well-formed (i.e., syntactically correct), but semantically erroneous XML instructions.
423QLocked Q?The 423 (Locked) status code means the source or destination resource of a method is locked.
424Q? Failed Dependency Q?The 424 (Failed Dependency) status code means that the method could not be performed on the resource because the requested action depended on another action and that action failed. For example, if a command in a PROPPATCH method fails then, at minimum, the rest of the commands will also fail with 424 (Failed Dependency).

500QInternal Server Error
501QNot Implemented
502QBad Gateway
503QService Unavailable
504QGateway Timeout
505QHTTP Version Not Supported
507QInsufficient Storage
 

lvq810 2008-06-16 18:24 发表评论
]]>
JavaScript中用解决document.getElementsByName不能获得对象的问题[转]http://www.tkk7.com/lvq810/articles/194384.htmllvq810lvq810Sun, 20 Apr 2008 14:27:00 GMThttp://www.tkk7.com/lvq810/articles/194384.htmlhttp://www.tkk7.com/lvq810/comments/194384.htmlhttp://www.tkk7.com/lvq810/articles/194384.html#Feedback0http://www.tkk7.com/lvq810/comments/commentRss/194384.htmlhttp://www.tkk7.com/lvq810/services/trackbacks/194384.html在写了很多js?会发现在js中M出现各种各样奇怪的问题,主要的问题是不能获得所需要的对象.
一般来?我们所需要获得的对象有几U办法获?
1. ID ?/strong>,通过使用document.getElementById()q个Ҏ获得用户所需的对?你只需要在标签中加入id="yourIdName"q样的属?你就可以用这个方法获得这个对象了.举个例子来说:有如下代?br /> <table><tr id='zergTr'><td>q里是zergpest的第一?lt;/td></tr></table>
那么我们要获得这个tr,q且讄q个trZ可见,应该q样?L如下代码:
<script type="text/javascript">
      var zergpest = document.getElementById("zergTr");
      zergpest.style.display = "none";
</script>
q样可以通过使用document.getElementById() q个Ҏ来获得改对象,q且讄该对象ؓ不可?
但是,如果我们需要设|多个具有同样ID的对象不可见的时?q个Ҏ׃能用?因ؓ无论你怎么为后面的<tr>标签did属?用document.getElementById()q个Ҏ获得的只能是W一个具有该ID的对?其实其他的IDq时候应该是属于伪Id?你所要操作的只能操作到第一个具有该ID的对?而不是具有所有你所讄的具有该ID的对?那么q时候我们该怎么办呢,LW?U方?
2.Name?/strong>,通过使用document.getElementsByName()q个Ҏ获得用户所需的对?你需要做的是在标{中加入name="yourname"q样的属?道理上说你就可以使用该方法获得该对象?然?有些时候确不是q样?document.getElementsByName()q个Ҏ其实主要是针对form标签中的对象有用,在form标签以外的对象就不一定有用了,q里说的不一?是说有时候有?有时候没有用.不过也可能和我用的IE7 beta3 有关,没有深入研究q?举个例子了说,有如下代?
<table><tr name='zergTr'><td>q里是zergpest的第一?lt;/td></tr></table>
<table><tr name='zergTr'><td>q里是zergpest的第二行</td></tr></table>
我们q里有二个相同的name,因ؓq个Ҏ是获取具有多个name?如果只有一个name的话,那么你用ID法来获取,而不要用q种,不然的话你需要进行判断length?
我们可以用如下代码来获取该对?q且讄该对象ؓ不可?代码如下:
<script type="text/javascript">
    var zergpest = document.getElementsByName("zergTr");
    if (!zergpest.length)
    {
          zergpest.style.display = "none";
     }
     else
    {
          for (var i=0;i<zergpest.length;i++)
          {
               zergpest[i].style.display = "none";
          }
     }
</script>
q样,道理上我们应该可以设|所有namegؓzergTr的对象ؓ不可见了,可是事实往往q不能如你所希望?如果我们?lt;tr>前面加个<form>标签,那么l果可以得C所需要的l果?但没有form标签的话,l果是有时候可以正?有时候不正确,甚至不能获得对象.q时?我们用第3U方法来解决,q就是轩辕的JS对象大招?
3.Name大法,通过使用document.documentElement.getElementsByTagName()q个Ҏl合name法来获得q些你所需要的对象.q是用刚才的例子.如下:
<table><tr name='zergTr'><td>q里是zergpest的第一?lt;/td></tr></table>
<table><tr name='zergTr'><td>q里是zergpest的第二行</td></tr></table>
q里我们需要设|该<tr>标签Z可见,而也不希望加上看着很不愉快?lt;form>标签,q时我们需要用如下代码:
<script type="text/javascript">
    var zergpest = document.documentElement.getElementsByTagName("tr");
    if (!zergpest.length)
    {
        zergpest.style.display == "none";
    }
    else
    {
        var realZerg = [];
        for (var i=0;i<zergpest.length;i++)
        {
             if (zergpest[i].name == "zergTr")
            {
                realZerg.push(zergpest[i]);
            }
        }
        if (realZerg.length)
        {
            for (var j=0;j<realZerg.length;j++)
            {
                realZerg[j].style.display = "none";
            }
        }
    }
</script>
q样可以把所有name值等于yournameq样的多个对象设|ؓ不可见了,q就是轩辕的Name大法,:),不要觉得用了2个for会牺牲性能,占用用户的cpu,其实现在用户的cpu最都?.5GHz以上,q点运对CPU来说Ҏ是骆驼w上的一个细?而且用户的cpu闲着也是闲着,既然对他供着?那就让他做点事情?:)q?U方法各有好?按照不同的需要可以选择不同的方?l究会达到js所需要的目的.


原文地址Qhttp://zergpest.spaces.live.com/blog/cns!2C6F0CD52F9AC08D!1480.entry?_c=BlogPart


lvq810 2008-04-20 22:27 发表评论
]]>
վ֩ģ壺 Ѳ߹ۿAV| aƬƷѹۿ| ˳ŮƬ߲| ߹ۿ| ѲŹɫƬ| ޾ƷƬ| ܻƺɫܴ̼Ƶ| ˼˼þ99ѾƷ6| ޾Ʒ˳ɵӰ| www޾Ʒþþ| þĻƵ| ޹Ʒվ߲ | ޾Ʒ˳߹ۿ| Ѳ߹ۿվ| ޸һƷ| ޾ƷAAƬ߹ۿ| ɫӰɫԴ| þùһƬѹۿ| ҹþ| þ޾Ʒۺ| һëƬ߹ۿ| 18Ʒ׽߹ۿ| freeƵ| þþþ޹| ޳ɫwwwþվҹ| Ʒ۲ӰԺ| 18Ůˬˬˬҹվ| һƵ| av뾫Ʒۺ | avרҳ| ޳AƬ߹ۿ| Ļ˳޵Ӱ| ձѵӰһ| 99Ʒ| þþþѾƷ| ëƬ벻һ | ؼëƬȫѲ| | Ůһ| AVƷɫ| ޾Ʒ|