摘要:
document.body和document.documentElement比较: document.body是DOM中Document对象里的body节点, document.documentElement是文档对象根节点(html)的引用。 IE在怪异模型(quick mode)下document.documentElement无法正确取到clietHeight scrollHeight等值,比如clietHeight=0。可以见IE的怪异模型并没有把html作为盒子模型的一部分,好在现在很少使用怪异模 型。(注:如果页面没写DTD或写的不对,IE6默认使用怪异模型解析页面)documen 阅读全文
随笔档案-2012年01月
jQuery技巧实用大全
2012-01-17 17:51 by 依水间, 328 阅读, 收藏, 编辑
摘要:
随着WEB2.0及 ajax思想在互联网上的快速发展传播,陆续出现了一些优秀的Js框架,其中比较著名的有Prototype、YUI、jQuery、mootools、 Bindows以及国内的JSVM框架等,通过将这些JS框架应用到我们的项目中能够使程序员从设计和书写繁杂的JS应用中解脱出来,将关注点转向功能需 求而非实现细节上,从而提高项目的开发速度。 jQuery是继prototype 之后的又一个优秀的Javascript框架。它是由 John Resig 于 2006 年初创建的,它有助于简化 JavaScript? 以及Ajax 编程。有人使用这样的一比喻来比较prototype和j. 阅读全文
AJAX读取XML到表格
2012-01-17 16:47 by 依水间, 1409 阅读, 收藏, 编辑
摘要:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML><HEAD><TITLE> New Document </TITLE><META NAME="Generator" CONTENT="EditPlus"><META NAME="Author" CONTENT=""><META NAME="Keywords&quo 阅读全文
Iframe跨域自适应高度(兼容IE/Firefox)终极解决方案
2012-01-17 16:46 by 依水间, 1275 阅读, 收藏, 编辑
摘要:
main.html在A域,被包含的iframe.html、proxy.html以及proxy.js在B域main.html<script type="text/javascript" src="http://zhaohe162.blog.163.com/blog/B域/proxy.js"></script><script type="text/javascript">var aai=new AutoAdjustIframe();aai.autoAdjust('frameName'); 阅读全文
网站优化技术三十条经验总结
2012-01-17 16:44 by 依水间, 303 阅读, 收藏, 编辑
摘要:
1.是否你的网站用W3C标记验证过网站HTML。 2.是否你的网站用W3C CSS验证服务来验证你的网站CSS。 3.是否用IE,opera,firefox,傲游等各种浏览器来检查你的网站。 4.是否为所有重要图片增加ALT和TITLE属性。 5.是否让你的页面小于50KB了。 6.是否用纯文本来代替重要正文图片。 7.是否你的网站没有死链接。 8.是否你的主页包含了跳转到主要页面的链接。 9.是否你的导航使用了少于8个的导航项。 10.是否对你的网站链接和文本做了区分。 11.是否给所有链接加了TITLE属性。 12.如果有大量页面,是否使用了导航条。 13.如果有大... 阅读全文
jQuery中ajax的使用和缓存问题解决
2012-01-17 16:42 by 依水间, 41883 阅读, 收藏, 编辑
摘要:
1:GET访问 浏览器 认为 是等幂的就是 一个相同的URL 只有一个结果[相同是指 整个URL字符串完全匹配]所以 第二次访问的时候 如果 URL字符串没变化 浏览器是 直接拿出了第一次访问的结果POST则 认为是一个 变动性 访问 (浏览器 认为 POST的提交 必定是 有改变的)防止 GET 的 等幂 访问 就在URL后面加上 ?+new Date();,[总之就是使每次访问的URL字符串不一样的]设计WEB页面的时候 也应该遵守这个原则2:一.谈Ajax的Get和Post的区别Get方式:用get方式可传送简单数据,但大小一般限制在1KB下,数据追加到url中发送(http的heade 阅读全文
几种常见浏览器内核简介
2012-01-17 15:37 by 依水间, 10181 阅读, 收藏, 编辑
摘要:
经常听说各种不同的浏览器,IE、Opera、Firefox、Safari、The World还有现在的Chrome等。看似许多不同的浏览器,其实其中还是有很多相似之处。今天,我们就来了解他们的内核~!那内核是什么呢?内核只是一个通俗的说法,其英文名称为“Layout engine”,翻译过来就是“排版引擎”,也被称为“页面渲染引擎”(下文中各种说法通用)。它负责取得网页的内容(HTML、XML、图像等等)、整理信息(例如加入CSS等),以及计算网页的显示方式,然后会输出至显示器或打印机。所有网页浏览器、电子邮件客户端以及其它需要编辑、显示网络内容的应用程序都需要排版引擎。不同的浏览器内核对网页 阅读全文
JS获得浏览器高度和宽度参数
2012-01-17 15:31 by 依水间, 865 阅读, 收藏, 编辑
摘要:
document.documentElement.clientHeight -->浏览器的高度document.documentElement.scrollHeight 全文的高度document.documentElement.scrollTop滚去的高度<script>function getInfo(){ var s = ""; s += " 网页可见区域宽:"+ document.body.clientWidth; s += " 网页可见区域高:"+ document.body.clientHeight; s 阅读全文
document.compatMode介绍
2012-01-17 15:29 by 依水间, 21518 阅读, 收藏, 编辑
摘要:
对于document.compatMode,很多朋友可能都根我一样很少接触,知道他的存在却不清楚他的用途。今天在ext中看到 document.compatMode的使用,感觉这个对于我们开发兼容性的web页面还是很有帮助,我们都知道,IE对盒模型的渲染在 Standards Mode和Quirks Mode是有很大差别的,在Standards Mode下对于盒模型的解释和其他的标准浏览器是一样,但在Quirks Mode模式下则有很大差别,而在不声明Doctype的情况下,IE默认又是Quirks Mode。所以为兼容性考虑,我们可能需要获取当前的文档渲染方式。 document.compa 阅读全文
JS中关于clientWidth offsetWidth scrollWidth 等的含义
2012-01-16 22:09 by 依水间, 81821 阅读, 收藏, 编辑
摘要:
网页可见区域宽: document.body.clientWidth;网页可见区域高: document.body.clientHeight;网页可见区域宽: document.body.offsetWidth(包括边线的宽);网页可见区域高: document.body.offsetHeight(包括边线的宽);网页正文全文宽: document.body.scrollWidth;网页正文全文高: document.body.scrollHeight;网页被卷去的高: document.body.scrollTop;网页被卷去的左: document.body.scrollLeft;网页正文 阅读全文
jquery使用$.getJson()跨域大数据量请求方法
2012-01-05 23:38 by 依水间, 4831 阅读, 收藏, 编辑
摘要:
jq的$.get和$.post方法,都是不能跨域访问的。$.getJson却让我们看到了希望的曙光,不过有一点不足的是,这个是GET的方法,传递的参数是有限制的,最大不超过2083个字符。但问题终有解决办法的,经分析得出解决方案如下:a.com使用$.getJson向b.com发送请求,在请求的同时,a.com把需要的传递的内容放到临时文件中(或者membercache),b.com收到请求,反过来向a.com请求需要的数据,进行必要的操作,再给a.com返回成功的信息。这样就达到跨域大数据量请求的目的了。当然通讯过程,最好加上协议,安全起见嘛。JS 代码:view plain$.getJSO 阅读全文
表单提交中get和post方式的区别
2012-01-05 23:35 by 依水间, 39547 阅读, 收藏, 编辑
摘要:
表单提交中get和post方式的区别有5点1.get是从服务器上获取数据,post是向服务器传送数据。2.get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTPpost机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。3.对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。4.get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般 阅读全文
[JS]document.body.clientHeight的取值
2012-01-05 23:22 by 依水间, 24360 阅读, 收藏, 编辑
摘要:
有时候需要取页面的底部, 就会用到document.body.clientHeight , 在HTML 标准中(这一句就能取到整个页面的高度, 不论body 的实际内容到底有多高, 例如, 1074*768 的分辨率, 页面最大化时, 这个高度约为720 , 即使页面上只有一句"hello world" , 也仍然取到720.可是在XHTML中, 如果body 体中只有一行, 则document.body.clientHeight 只能取到那一行的高度, 约20px, 这时如何还想取到整个页面的高度, 就要用document.documentElement.clientHe 阅读全文
html meta 之 http-equiv
2012-01-05 15:04 by 依水间, 702 阅读, 收藏, 编辑
摘要:
HTTP-EQUIV类似于HTTP的头部协议,它回应给浏览器一些有用的信息,以帮助正确和精确地显示网页内容。常用的HTTP-EQUIV类型有:1、Content-Type和Content-Language (显示字符集的设定) 说明:设定页面使用的字符集,用以说明主页制作所使用的文字已经语言,浏览器会根据此来调用相应的字符集显示page内容。 用法:<Meta http-equiv="Content-Type" Content="text/html; Charset=gb2312"> <Meta http-equiv="Con 阅读全文
HTML中小meta的大作用
2012-01-05 15:03 by 依水间, 301 阅读, 收藏, 编辑
摘要:
meta是用来在HTML文档中模拟HTTP协议的响应头报文。meta 标签用于网页的<head>与</head>中,meta 标签的用处很多。meta 的属性有两种:name和http-equiv。name属性主要用于描述网页,对应于content(网页内容),以便于搜索引擎机器人查找、分类(目前几乎所有的搜索引擎都使用网上机器人自动查找meta值来给网页分类)。这其中最重要的是description(站点在搜索引擎上的描述)和keywords(分类关键词),所以应该给每页加一个meta值。比较常用的有以下几个: name 属性 1、<meta name=&quo 阅读全文
HTTP头的Expires与Cache-control
2012-01-05 15:02 by 依水间, 250 阅读, 收藏, 编辑
摘要:
1.概念Cache-control用于控制HTTP缓存(在HTTP/1.0中可能部分没实现,仅仅实现了Pragma: no-cache)数据包中的格式:Cache-Control:cache-directivecache-directive可以为以下:request时用到:| "no-cache" | "no-store" | "max-age" "=" delta-seconds | "max-stale" [ "=" delta-seconds ] | "min 阅读全文
yslow页面性能优化分析
2012-01-05 14:37 by 依水间, 742 阅读, 收藏, 编辑
摘要:
详版:YSlow是yahoo美国开发的一个页面评分插件,非常的棒,从中我们可以看出我们页面上的很多不足,并且可以知道我们改怎么却改进和优化。仔细研究了下YSlow跌评分规则。主要有12条:1. Make fewer HTTP requests尽可能少的http请求。。我们有141个请求(其中15个JS请求,3个CSS请求,47个CSS background images请求),多的可怕。思考了下,为什么把这个三种请求过多列为对页面加载的重要不利因素呢,而过多的IMG请求并没有列为不利因素呢?发现原来这些请求都是可以避免的。15个JS和3个CSS完全可以通过特殊的办法进行合并(这个技术部已经帮我 阅读全文
JS性能优化
2012-01-05 12:50 by 依水间, 20504 阅读, 收藏, 编辑
摘要:
下面是一些关于客户端JS性能的一些优化的小技巧:1.[顶]关于JS的循环,循环是一种常用的流程控制。JS提供了三种循环:for(;;)、while()、for(in)。在这三种循环中 for(in)的效率最差,因为它需要查询Hash键,因此应尽量少用for(in)循环,for(;;)、while()循环的性能基本持平。当然,推 荐使用for循环,如果循环变量递增或递减,不要单独对循环变量赋值,而应该使用嵌套的++或--运算符。2.如果需要遍历数组,应该先缓存数组长度,将数组长度放入局部变量中,避免多次查询数组长度。3.局部变量的访问速度要比全局变量的访问速度更快,因为全局变量其实是window 阅读全文
我所经历的JS性能优化(转)
2012-01-05 12:49 by 依水间, 1477 阅读, 收藏, 编辑
摘要:
折腾了好几天,纠结了好几天,郁闷了好几天,终于在今天可以释怀了,留下其中的苦乐辛酸来和大家分享。 事情是这样子的,上周接到一个需求,其中涉及到一个好友选择的组件,就是单机左侧某个群组下的好友后该好友移动到右侧,视为选择了它,另外每个群组还有全选,折叠和展开等功能。组件在开发过程中,遇到了在2000条数据的时候,搜索会变的很卡,IE8下为2s左右,IE6更长,我在最初的优化过程中我使用事件代理,文档片段,字符串数组,少创建对象,缓存一切可以缓存的,用hash超找代替数组查找等方式,但是一直没有找到性能的瓶颈所在,所以效果不大,后来采用了setTimeout的方式,就是限制js的执行时间,当它.. 阅读全文
HTML5与HTML4的10个关键区别
2012-01-04 22:47 by 依水间, 390 阅读, 收藏, 编辑
摘要:
HTML5是HTML标准的下一个版本。越来越多的程序员开始HTML5来构建网站。如果你同时使用HTML4和HTML5的话,你会发现用HTML5从头构建,比从HTML4迁移到HTML5要方便很多。虽然HTML5没有完全颠覆HTML4,它们还是有很多相似之处,但是它们也有一些关键的不同。本文就列出了它们之间10个关键的不同之处。1.HTML5标准还在制定中首先要注意的是,HTML5虽然现在很火,但是HTML5标准还在制定中,标准仍在改变。HTML4已经10多年了,不会有任何改变了。2.简化的语法HTML5简化了很多细微的语法,例如doctype的声明,你只需要写<!doctype html& 阅读全文
为什么Adobe要放弃移动设备端的Flash
2012-01-04 22:38 by 依水间, 516 阅读, 收藏, 编辑
摘要:
Adobe宣称将放弃移动设备的Flash。说是因为iOS不上Flash导致失败。其实不然。其实不然。这只是个借口,为了个自己找个台阶下。我们先看看移动设备和电脑有什么不同。没有鼠标,导致没有划过和悬停操作。作为一个Flash开发人员,深知划过和悬停是Flash重要的状态之一。没有 的话很多功能甚至实现不了。另外玩家也无法做到像素级的精确定位,也就是界面要为手指优化:按钮可能做的较小,其响应区域却要变大。其他的方面,Flash的低效导致其在移动设备上表现很差,卡,耗电。想想Flash为了支持硬件加速花了多长时间,再想想各种移动设备那么多架构那么多显卡。当然这些都是可以慢慢克服的。还有一个就是移动 阅读全文