自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 资源 (1)
  • 收藏
  • 关注

转载 margin/padding-top/bottom 的百分比

margin/padding-top/bottom 的百分比之所以按照 width 计算,其实理由很简单,就是要匹配主要的 use cases。那就是——要构建在纵横两个方向上相同的 margin/padding。如果两个百分比的相对方式不同,那用百分比就无法得到垂直和水平一致的留白。有人也许会问,为什么不是垂 直方向上的 height 而是水平方向的 width?这其实容易理解。因为 C

2014-11-06 18:49:12 573

转载 JS中toFixed()方法

最近发现JS当中toFixed()方法存在一些问题,采用原生的Number对象的原型对象上的toFixed()方法时,规则并不是所谓的“四舍五入”或者是“四舍六入五成双”,所谓“四舍六入五成双”,在百度百科上给的解释是:也即“4舍6入5凑偶”这里“四”是指≤4 时舍去,"六"是指≥6时进上,"五"指的是根据5后面的数字来定,当5后有数时,舍5入1;当5后无有效数字时,需要分两种情况来讲:①5前为奇

2014-11-06 18:46:22 436

原创 前端规范

今天和大家一起讨论前端规范,不仅约定的代码规范,还学到了许多东西:(1)为什么编码规范里要求每行代码不超过80个字符:实际上是79个字符,80是个大概数,它是给程序员的一个参考值。这样做的理由是:以前老旧的电脑屏幕下,超过80个字符,就会超出屏幕宽度。而现在,我们有了更大,更高分辨率的屏幕,但发现,在编码中采用这个80个字符的规范,配合空格的使用,这会让我们的代码更急凑,更可读。(2)

2014-09-09 21:18:51 365

原创 理解参数

(1)理解参数:ECMAScript中没有函数签名的概念,其函数参数是一个包含零或多个值的数组的形式传递的,可以通过arguments对象来访问这些参数。而且由于不存在函数签名的特性,ECMAScript函数不能重载,只会覆盖。(2)ECMAScript中所有函数的参数都是按值传递的。从上面的例子可以看出,在把person传递给setName()后,name属性被设置为"a",然后

2014-09-09 21:17:46 507

原创 写js代码时最好将“人物”与“事件”分开

写js代码时最好将“人物”与“事件”分开因此,将原来的两个click事件抽离整合出来,首先进行对象初始化——绑定事件——事件方法实现init:进行初始化,并绑定bind事件bind:绑定事件(mouseon、click)mouseon:实现鼠标mouseenter、mouseleave效果click:实现点击触发事件,其中包括轮播图片选择,绑定animate事件

2014-09-09 21:15:33 373

转载 图片的HTTP

1. 隐藏图片结论:这种情况下,因为 标签在DOM树中占有一席,所以大部分浏览器不管 display 的属性值是什么都会发送请求。但是也有例外,对于Opera浏览器则不会产生请求。可是如果这里用 visibility: hidden 隐藏图片,那么Opera就会产生请求。2. 重复图片结论:所有浏览器都只产生一次请求 。3. 重复背景

2014-09-09 21:13:23 236

转载 SVN vs git

SVN是集中式的版本控制系统,而Git是分布式版本控制系统。集中式版本控制系统,版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再推送给中央服务器。中央服务器就好比是一个图书馆,你要改一本书,必须先从图书馆借出来,然后回到家自己改,改完了,再放回图书馆。分布式版本控制系统根本没有“中央服务器”,每个人的电脑上

2014-09-09 21:11:16 241

转载 创建对象的模式

我将《javascript高级程序设计》的面向对象的程序设计一章又重温了一遍,总结了创建对象的模式有:1)工厂模式:使用简单的函数创建对象,为对象添加函数和方法,然后返回对象。这个模式解决了创建多个相似对象的问题,但没有解决对象识别的问题。2)构造函数模式:可以创建自定义引用类型,可以像创建内置对象实例一样使用new操作符。使用new操作符需要经历的4个步骤有:创建一个新对象;将构造函数的

2014-09-09 21:10:38 254

原创 小技巧

(1)多个li之间都具备“下划线”或者“右侧线”(最后一个li不具备这种样式)的情况下,我们可以用overflow:hidden来实现视觉上的效果(2)我个人很少使用dt、dl、dd,在以后的项目中可以适当的运用,用来减少dom层级(3)当ul中的li竖直放置时,IE6、7下通常会出现3px的bug,可以用清除浮动来解决这个问题,也可以将为li添加样式 vertical-align:mid

2014-09-09 21:09:46 211

转载 编写高效的css选择符

今天我学习了css优化,了解到css选择符是从右到左匹配的。要编写高效的css选择符需要注意一下几点:1.避免使用通用选择符:除了传统意义上的通配选择符之外,相邻兄弟选择符、子选择符、后代选择符和属性选择符都归纳到“通配规则”分类下。最好仅仅使用ID、类和标签选择符。2.不要限定ID选择符。ID只对应一个元素,所以没有必要额外的限定。3.不要限定类选择符:不要用具体的标签限定类选择符,

2014-09-09 21:04:57 308

原创 function类型

学习《javascript高级程序设计》中的function类型介绍(1)函数是对象,函数名是指针,函数的名字仅仅是一个包含指针的变量而已,所以在ECMAScript中没有函数重载,只有函数覆盖(2)函数声明与函数表达式的区别在于:解析器会先读取函数声明,使之声明提前,可以被执行环境内的任何代码访问;函数表达式必须要等到解析器执行到所在的代码块才会被真正的解析执行console.l

2014-09-09 21:02:24 254

转载 jQuery源码分析中的选择器部分

今天看了jQuery源码分析中的选择器部分。之前一直以为与css一样是从右向左选择,今天才知道要分情况。用下面这个例子进行分析说明:(1)$('div button:first') :first是位置过滤器,div下所有button中的第一个,只匹配一个元素(2)$('div button:first-child') :first-child是子元素过滤器,每个div下button中的第一

2014-09-04 21:41:58 466

原创 setTimeOut+animate

1 今天在项目中遇到一个问题,给对象绑定hover事件,且hover事件执行的是animate()时,当鼠标在该对象上多次快速的划进划出,animate()会按顺序依次执行,将每一次的over和out都执行完,即使鼠标已经停止动作多时。对此,我采用了加入定时器的方法,每当对象更换hover状态时,清除之前的定时器,重新设置定时器来触发该状态应有的事件,基本可以去除之前的bug。代码如下:

2014-09-04 21:40:20 889

转载 图像

像素和RGB:图像由像素组成,像素是图像中最小的信息单元。可以用不同的颜色模型来描述像素,RGB就是最常用的一种。RGB采用红、绿、蓝的数量多少来描述一个像素,R、G、B被称为成分(又叫 通道)。真彩色图像VS调色板图像格式:可以支持256*256*256种颜色的图像格式叫做真彩色图像格式,比如:JPEG和真彩色类型PNG;而GIF和PNG8会限制调色板中最多只能包含256种颜色,这256种颜

2014-09-04 21:38:55 550

原创 Gzip压缩

今天我看了有关Gzip压缩的有关知识,了解到所有浏览器都已经支持Gzip压缩,并且所有负责任的web开发者都已经启用了这项功能但是有10%以上的访问者没有声明支持Gzip压缩,罪魁祸首是web代理和pc安全软件。因为他们要对web服务器发送的响应进行监听,监听未压缩的响应会占用更少的cpu资源。所以我们要最小化未压缩文件的尺寸:1.使用事件委托;2.使用相对的url,包括//www.……来代替

2014-09-04 21:37:08 334

转载 怎么样编写高效的js代码

今天,我学习了怎么样编写高效的js代码1.管理好作用域和作用域链,通过多使用局部变量,减少with和try catch的使用。因为with和catch都是在作用域的顶部增加了一个对象。2.高效的存取数据。存取数据有四种方式:字面量值,变量,数组元素和对象属性。3.流控制:最快的条件判断:1)if语句:两个之内的离散值需要判断,大连的值能容易的分到不同的区间范围中。2)switch语句:

2014-09-04 21:36:24 484

原创 如何做一个更好的重构工程师

参加杜瑶的分享:如何做一个更好的重构工程师,如何写更好的html/css主要收获有:(1)table:默认情况下,加载完最后一个单元格的内容才会去渲染整个表格,性能降低,所以建议使用table-layout:fixed(2)图像热点,map标签:map可以通过name属性与图片的usemap属性关联,做到在一张图片上指定区域指定图形(包括多边形)指定大小可点击(3)图片默认存在白边

2014-09-04 21:35:10 600 1

原创 ie6却无法点击a连接

遇到的问题,在使用a标签模拟图片热点时用到绝对定位,在火狐、谷歌其它浏览器下没有问题,但ie6却无法点击a连接。经过研究,才知道在 IE6下,绝对定位的链接,如果它没有设置背景,并且它在其它元素上方时,则最终的显示结果似乎被它下方的元素遮住了,不响应鼠标悬停和点击。如果给这个链接加边框,则只有边框部分响应。如果给它加背景色或背景图片,则整个链接都可以响应。有以下3种解决方法解决

2014-09-04 21:33:20 304

原创 ie6的png背景滤镜

完成专题头图上的分享功能,其中对于ie6的png背景滤镜有了更深刻的体会功能要求:如下图,(1)鼠标hover到红色区域时,显示绿色区域;(2)鼠标离开红色区域,绿色区域隐藏(3)鼠标停留在绿色区域时,绿色区域不隐藏(4)鼠标划过蓝色区域时,绿色区域不隐藏初步方案:给红色区域按钮增加一个hover()事件,设置over和out函数,但是只能实现功能1和2,功能3

2014-09-04 21:32:00 358

转载 setTimeout

今天学到了两个使用setTimeout的小技巧 如下:(1) IE中给setTimeout中的调用函数传参数IE是不支持在setTimeout中给被调用的函数传参数的,为了浏览器世界的和谐,我们可以把函数调用参数包裹进新的匿名函数中。示例:function f(a){alert(a);}// setTimeout(f,50,'hello'); //用于非IEsetT

2014-09-04 21:31:59 308

原创 鼠标悬停

专题模板中,有一处要求鼠标悬停到图片上时,从下往上划出介绍文字,最开始采用了mouseover和mouseout,结果发现会产生一个bug:介绍文字出现后,鼠标就相当于mouseover到了介绍文字上,而离开了本来的图片,此时介绍文字又会消失。直接用hover()事件可以解决这个问题:当鼠标移动到一个匹配的元素上面时,会触发指定的第一个函数。当鼠标移出这个元素时,会触发指定的第二个函数。而

2014-09-04 21:30:11 418

原创 IE6 中的图片元素 img 图片布局下出现多余空白的问题

专题网切图过程中,进行页面的DIV+CSS排版时,遇到 IE6 中的图片元素 img 图片布局下出现多余空白的问题。该问题的解决方法根据原因的不同而不同,这里稍稍总结了一下常用方法, 供大家参考。1、将图片转换为块级对象即 设置 img 为:display : block;比如增加一组CSS代码:#id img { display:block; }2、设置图片的

2014-09-04 21:27:39 651

原创 利用trasform属性和border实现对话框下三角效果

今天分别利用trasform属性和border实现对话框下三角效果(由于◆ 方法较为简单,就没有列出)1、利用border的效果实现:HTML:CSS:.message_box{position: relative;width: 240px;height: 60px;line-height:60px;background: #0099

2014-09-04 21:26:33 514

原创 对throw语句,try/catch/finally语句加深理解:

对throw语句,try/catch/finally语句加深理解:throw:显式的抛出异常try/catch/finally:捕获异常try{//通常来讲,这里的代码会从头执行到尾而不会产生任何问题//但有时会抛出一个异常,要么是由throw语句直接抛出,要么通过一个方法间接抛出}catch(e){//当且仅当try抛出了异常,才会执行这里的语句//这里可

2014-09-04 21:25:03 518

转载 JavaScript 中的 this

今天我有幸围观了一个师兄对JavaScript基础知识的分享会,听了他对 ECMAScript 5.1 的知识总结,收获很多。其中就让我对 this 的认识更进一步,这里就总结一下 JavaScript 中的 this:首先,this是 Javascript 语言的一个关键字。 this的含义可以是全局对象、当前对象或者任意对象,这完全取决于函数的调用方式。 JavaScript 中函数的

2014-09-04 21:24:33 172

原创 做项目的开发流程

做项目的开发流程:需求(review-需求文档)--开发(建分支-和后端沟通接口-自测)-测试(申请测试--修改bug【bugfree的状态】)—发布—【若有线上bug,新建分支修改bug】

2014-09-04 21:23:21 375 1

原创 ECMAScript 的一些理解

1 执行环境当控制器转入 ECMA 脚本的可执行代码时,控制器会进入一个执行环境。当前活动的多个执行环境在逻辑上形成一个栈结构。该逻辑栈的最顶层的执行环境称为当前运行的执行环境。2 词法环境和环境记录项 一个词法环境由一个环境记录项和可能为空的外部词法环境引用构成。声明式环境记录项用于定义那些将 标识符 与语言值直接绑定的 ECMA 脚本语法元素,例如 函数

2014-09-04 21:22:06 282

原创 一些关于table的知识

今天主要看了一些关于table的知识,总体归纳如下。 1.table的使用范围: (1)承载数据,如果需要在网页中显示一个数据列表,那么显然需要用到table。 (2)EDM网页,EDM就是电子邮件营销,往别人的邮箱里发送邮件。由于邮箱的服务商会做出一些限制,再加上接收邮件的客户端能力的差异,导致日常的网页无法用在EDM上。而table的一些特性显然符合EDM的需求。(3)

2014-09-04 21:20:43 535

原创 eval()

将《javascript 权威指南》第4章收尾,并学习完第5章,收获:(1)eval()是一个函数还是一个运算符?一个函数(2)直接调用eval()时,它总是在调用它的上下文作用域内执行;其他的间接调用则使用全局对象作为其上下文作用域,并且无法读、写、定义局部变量和函数var geval=eval; //使用别名调用eval将是全局evalvar x="global";

2014-09-04 21:20:23 292

原创 对分号的使用

学习《javascript 权威指南》第3、4章,收获:对分号的使用考虑如下代码,因为两条语句用两行书写,第一个分号是可以省略掉的:a=3;b=4;如果按照下面格式书写,第一个分号则不能省略掉:a=3; b=4;javascript并不是在所有换行处都填补分号,只有在缺少了分号就无法正确解析代码的时候,才会填补分号。(1)var aa= ====> ja

2014-09-04 21:17:22 414

原创 阴影背景随着文字的宽度自适应

要求:如下图所示,阴影背景随着文字的宽度自适应

2014-09-04 21:12:02 1612

转载 目标和可行的计划

在实习期间希望大家能给自己定一个目标和可行的计划,并最终给自己一份满意的答卷。关于计划我提几点建议,各自参照自己的情况适当调整。作为一个合格的前端工程师所要具备的:一、基本要求1. 任何问题到我这里结束任何事情的成功都伴随着一个好的心态,好的期许。工作中我们会遇到各式各样的问题:重复的,繁琐的,别人的,自己的等等。

2014-09-03 21:53:13 294

转载 jQuery对象、DOM对象

jQuery对象 :通过jQuery包装DOM对象后产生的对象。(1)jQuery对象是jQuery独有的,可以使用jQuery里面的方法。比如:我要获取ID为"test"的元素内的html,在jQuery里面就是:$("test").html();等同于 document.getElementById("id").innerHTML;(2)虽然jQuery对象是包装DOM对象

2014-09-03 21:47:11 319

原创 手机浏览器出现的问题

解决手机浏览器出现的问题:(1)最开始以为是跨域问题:因为使用的前端类库是jquery,对jsonp有封装,直接使用,在PC上没问题,但是在手机上发请求,后台接收不到,感觉就是发了请求,然后就被浏览器阻止了。所以jsonp尝试手机上浏览器跨域失败。试过将jsonp请求同一域名下的,PC和手机上都OK的。(2)接下来进行尝试,用公司主页上机票下的一个请求链接来做替换测试,发现此时手机和p

2014-09-03 21:46:13 602

转载 浏览器的工作原理(一)

一、五个主流浏览器:Internet Explorer、Opera、 Firefox、 chrome浏览器 和 Safari,其中后面的三个是代码开源的浏览器,占据了将近60%的浏览器市场份额。浏览器厂商对规范的遵循并不完善,所以开发者面临严重的浏览器兼容问题。二、各大浏览器之间有很多共同点,其中公共的界面元素有:地址栏 前进,后退按钮 书签设置 刷新,停止按钮

2014-09-03 21:41:38 267

转载 怎么样编写高效的js代码

1.管理好作用域和作用域链,通过多使用局部变量,减少with和try catch的使用。因为with和catch都是在作用域的顶部增加了一个对象。2.高效的存取数据。存取数据有四种方式:字面量值,变量,数组元素和对象属性。3.流控制:最快的条件判断:1)if语句:两个之内的离散值需要判断,大连的值能容易的分到不同的区间范围中。2)switch语句:超过2个少于10个离散值需要判断,条件值是

2014-09-03 21:33:06 366

转载 有关图像的基本概念

今天学习了有关图像的基本概念:像素和RGB:图像由像素组成,像素是图像中最小的信息单元。可以用不同的颜色模型来描述像素,RGB就是最常用的一种。RGB采用红、绿、蓝的数量多少来描述一个像素,R、G、B被称为成分(又叫 通道)。真彩色图像VS调色板图像格式:可以支持256*256*256种颜色的图像格式叫做真彩色图像格式,比如:JPEG和真彩色类型PNG;而GIF和PNG8会限制调色板中

2014-09-03 21:32:23 471

转载 jQuery的deferred对象

今天学习jQuery API的时候看到deferred部分,以前也没有接触使用过,看的毫无头绪,于是找资料学习了一番。deferred对象代表了将要完成的某种操作,并提供了一些方法,帮助用户使用。它是jQuery对Promises接口的实现。由于JavaScript单线程的特点,如果某个操作耗时很长,其他操作就必需排队等待。为了避免整个程序失去响应,通常的解决方法是将那些排在后面的操作,写成“

2014-09-03 21:31:15 182

原创 chrome字体小于12px

在项目中需要兼容Firefox、chrome、Safari浏览器,主要在于字体大小<12px时的兼容,之前已经在css中加入了-webkit-transform=scale(0.75);-webkit-transform-origin=0 0;样式实现chrome中字体大小为9px。但是今天发现Safari本身是可以实现字体大小<12px,却同样受到css样式的影响,于是9px的字体在safari

2014-09-03 21:29:32 253

转载 事件mouseover/out和mouseenter/leave

不论鼠标指针穿过被选元素或其子元素,都会触发mouseover事件。对应mouseout只有在鼠标指针穿过被选元素时,才会触发mouseenter事件。对应mouseleave对于mouseover和mouseenter两个事件,最大的区别就是mouseenter是不冒泡的事件。对于mouseover事件来说 当鼠标从其他元素移动到child节点时发生 但此事件会冒泡 所以会导致par

2014-09-03 21:29:22 226

汇编程序 排序 数据传送

汇编 排序 数据传送 电话号码 成绩排名

2011-08-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除