web前端
文章平均质量分 57
8427003
我只是一个coder
展开
-
commonjs vs commonjs2
分享请标明来自:https://www.css3.io/commonjs-vs-commonjs2.html背景在 webpack中看到了两个关键字,commonjs 和 commonjs2. 它们与模块导出有着密切关系。commonjs vs commonjs2 vs exports vs module.exportsCommonJs spec defines only exports. But原创 2017-03-22 16:57:06 · 4109 阅读 · 0 评论 -
Jquery 的attr方法与想象的不一样
Jquery 的attr方法就是为表单元素加一个属性。例如:$('body').attr('a',1);那么如果$('body').attr('disabled','disabled');那么但是,如果你想删除属性就没那么简单了。$('body').attr('disabled','');可以删除吗?答案是:不能。测试发现:$原创 2014-03-05 10:04:34 · 887 阅读 · 2 评论 -
Div 与 table 的区别
转载地址:http://software.intel.com/zh-cn/blogs/2014/02/20/div-table/?utm_campaign=CSDN&utm_source=intel.csdn.net&utm_medium=Link&utm_content=others-divDiv 与 table 的区别转载 2014-03-05 13:04:30 · 2513 阅读 · 0 评论 -
JS 弹出新窗口被拦截
如下代码: 如果通过JS脚本,控制"btnSub"按钮提交Form表单,或者在Ajax中使用window.open方法时,在某些浏览器下(比如IE6)就会出现弹出新窗口被拦截的现象。(若不是在Ajax中使用Window.open、或者用默认为提交表单类型的按钮直接提交表单时则不会出现此问题。),比如: function openDemo(){ /原创 2014-02-20 14:43:38 · 1775 阅读 · 1 评论 -
Object.create 与 new function 区别
首先来看看两种语法各是如何创建对象的Object.create()var test = {val: 1};var testA = Object.create(test);testA.val = 2;console.log(testA.val);//打印 2delete testA.val;console.log(testA.val); //打印 1答案一目了原创 2014-02-12 18:13:53 · 3337 阅读 · 2 评论 -
判断javascrit 类型 Object.prototype.toString方法的原理
转载地址:http://www.cnblogs.com/ziyunfei/archive/2012/11/05/2754156.htmlJavaScript:Object.prototype.toString方法的原理在JavaScript中,想要判断某个对象值属于哪种内置类型,最靠谱的做法就是通过Object.prototype.toString方法.va转载 2014-01-08 22:48:21 · 833 阅读 · 0 评论 -
事件整理理论篇
一、类别及其区别。1、原始事件模型 (0级DOM事件,所有浏览器支持包括ie)分两种注册方式 A.作为HTML的属性值。B.作为javaSript对象的属性值。dom.onclick = function(){alert()}2、标准事件模型 (2级DOM 事件) 3、Internet Explorer 事件模型(指的是attachEvent这种ie原创 2014-02-19 14:14:37 · 816 阅读 · 0 评论 -
字体大小,行高,高度
ie6下,font-size 等于 line-height 时,字体受行高限制,显示不全。如图:所以应该讲行高值设置为大于字体值2px;原创 2014-02-08 10:40:56 · 12854 阅读 · 0 评论 -
Standard ECMA-262 5.1 Edition / June 2011 重要部分翻译
ECMA-262,5rd4.2 语言概述下面是一个ECMAScript非正式的概述,并非语言的所有部分都被阐述。这概述不属于标准文献章节的一部分。ECMAScript是基于对象的:基本的语言和宿主能力被对象提供,ECMAScirpt程序是对象间交流的集合。对象是一个无序的属性集合,每个属性又拥有零个或者多个子属性,这些子属性决定先前的父属性能够被使用----比如,当一个父属性的子属性被翻译 2014-02-26 15:18:55 · 1324 阅读 · 0 评论 -
javascript容易搞混的方法些
String的正则方法 Match参数:可以是字符串,和正则对象。返回:数组或者null。 如果 regexp 没有标志 g,那么 match() 方法就只能在 stringObject 中执行一次匹配。如果没有找到任何匹配的文本, match() 将返回 null。否则,它将返回一个数组,其中存放了与它找到的匹配文本有关的信息。该数组的第 0 个元素存放的是匹配文本,而其原创 2014-02-26 15:14:48 · 737 阅读 · 0 评论 -
ECMAScript 5 新特性使用---bind
FunctionFunction.prototype.bind原创 2014-02-12 11:08:56 · 894 阅读 · 1 评论 -
浏览器中关于事件的那点事儿
转载自:http://kb.cnblogs.com/page/199251/浏览器中关于事件的那点事儿作者: 顽Shi 发布时间: 2014-02-01 20:22 阅读: 1541 次 推荐: 9 原文链接 [收藏] 摘要:事件在Web前端领域有很重要的地位,很多重要的知识点都与事件有关。本文旨在对常用的事件相关知识做一个汇总和记录。转载 2014-02-12 09:44:57 · 825 阅读 · 0 评论 -
JavaScript 开发者经常忽略或误用的七个基础知识点
转自:http://kb.cnblogs.com/page/187757/ 英文原文:7 JavaScript Basics Many Developers Aren't Using (Properly) JavaScript 本身可以算是一门简单的语言,但我们也不断用智慧和灵活的模式来改进它。昨天我们将这些模式应用到了 JavaScript 框架中,今天这些框架转载 2014-02-12 11:56:36 · 774 阅读 · 0 评论 -
正则表达式高级用法\1
引用\1例/['"][^'"]*['"]/ 它并不能要求开始和结束的引号匹配(如两个都是单引号,或者两个都是双引号)。如果要求开始和结束的引号相匹配,可以使用如下引用:/(['"])[^'"]*\1/ 即可以匹配形如 "abc", 'abc',不会匹配"abc','abc"\1 匹配的是第一个带括号的子表达式所匹配的模式。它时时了一条约束,那就是开始的引原创 2014-02-10 17:02:06 · 2818 阅读 · 1 评论 -
那些年,哥私藏的源代码
1.英文截断 p{height: 24px;overflow: hidden;width: 100%;word-wrap:break-word;word-break:break-all;}原创 2014-01-03 11:03:03 · 1025 阅读 · 1 评论 -
CSS Hacker
1、IE条件注释法 .test{} 2、选择符前缀法 .test{width:80px;}/*IE 6,7,8 */*html .test{width:60px;}/*only for IE 6*/注意一定是*html打头,其它如*b原创 2014-03-14 17:18:33 · 811 阅读 · 0 评论 -
水平居中,垂直居中
不定宽度的块级元素水平居中1,用table 居中Table不设置宽度的话,他的宽度由内部元素宽度决定,所以设置table的 margin:0 auto可实现居中;缺点,增加了嵌套,标签无语义。2,强制以display:inline;text-align:center缺点,会带来一些限制,减少了块级元素的功能,如宽高无效了。 3,父元素设置float,position原创 2014-03-14 17:21:42 · 917 阅读 · 1 评论 -
一个遮罩层
/* * 创建遮罩层 */ createMask : function() { var maskDom = document.getElementById( "JS_page_mask_layer" ); if( maskDom ) { document.body.removeChild( maskDom ); } var mask = document.create原创 2014-01-03 11:31:37 · 748 阅读 · 0 评论 -
javascript简单算法
分享请标明来自:https://www.css3.io/javascript-algorithm.html折半查找算法var data = [3, 12];var goal = 3;function bSearch(goal, array, indexStart, indexEnd) { if (indexStart > indexEnd) { return -1;原创 2017-03-22 16:55:25 · 805 阅读 · 0 评论 -
javascript继承的演变
分享请标明来自: https://www.css3.io/javascript-extend-history.html1.最简单原型继承function Super () { this.name = 'name'; this.colors = ['red', 'black']}Super.prototype.getName = function () { return原创 2017-03-22 16:54:04 · 700 阅读 · 0 评论 -
如何理解css的BFC抽象概念
分享请标明来自: https://www.css3.io/bfc-css.html背景BFC(Block Formatting Contexts), 这东西在css里经常被谈论到。它的难点在于,它是一个非常抽象的概念,难以让人理解。还容易与盒模型区分不开。反而如何触发它,或者它有什么使用场景倒还容易理解。这不是一篇讨论它具体细节的文章。这里只是谈谈我个人对这个抽象概念的理解。原创 2017-03-22 16:46:28 · 796 阅读 · 0 评论 -
GET请求与POST的秘密
分享请标明来自: https://www.css3.io/get-vs-post.html背景以前被人问起GET请求与POST请求区别。一般人都能答出:长度、安全、浏览器后退,历史记录等行为不同get一般用于查询数据,post一般用于写入数据然后有人提出了一个杀手锏的区别,99%的人都不知道,那就是:GET产生一个TCP数据包;POST产生两个TCP数据包。对原创 2017-03-22 16:43:40 · 816 阅读 · 0 评论 -
bigpipe-php+nginx实战篇
分享请标明来自: https://www.css3.io/bigpipe-nginx-php.htmlphp实现分段输出demo最简单demo:echo 'hello';ob_flush();flush();sleep(1);echo 'world';这是一个最简单的BigPipe demo,然而由于fastcgi_buffer的存在,并不能看到分段输出的效果。那么,我们把程序进行一下改动,原创 2017-03-22 16:40:30 · 1445 阅读 · 0 评论 -
bigpipe实现理论背景篇
分享请标明来自:https://www.css3.io/bigpipe.htmlbigpipe vs 静态页面要想网页响应速度快,其实最简单可行的方法是将它生成静态页面就好了。但是有些页面不适合生成静态页面:比如首页,或者列表页,以及那些数据在实时变化的页面。像某个产品的详情页这种就适合生成静态页面,因为数据更新不频繁。所以对于那种不适合用生成静态页面来解决的场景我们怎么办呢?maybe bigpi原创 2017-03-22 16:38:37 · 1025 阅读 · 0 评论 -
http缓存
分享请标明来自: https://www.css3.io/http_cache.htmlhttp缓存一般浏览器都实现了 HTTP 缓存! 我们所要做的就是,确保每个服务器响应都提供正确的 HTTP 头指令,以指导浏览器何时可以缓存响应以及可以缓存多久。Expires 或 Cache-Control:max-age 组成缓存第一道“防线”。如果没有超过缓存失效时间,那么将直接原创 2017-03-22 16:36:34 · 607 阅读 · 0 评论 -
通过travis部署代码到远程服务器
分享请标明来自: https://www.css3.io/deploy-code-to-remote-server-with-travis.htmlkeywords: travis,travis-ci,sshpass,stricthostkeychecking,部署到远程服务器,deploy,remote server背景我的blog代码托管在github上,想通过travis在提交代码时自动发布到原创 2017-03-22 16:32:50 · 4224 阅读 · 0 评论 -
gitbook生成静态blog通过travis发布到github托管
分享请标明来自: https://www.css3.io/travis-gitbook-github.html背景gitbook既是一个网站,专业提供写书的地方服务。也是一个基于node平台的应用,可以生产静blog。然而它作为网站,提供了在线访问的服务,这是我用gitbook生成的静态blog:http://www.css3.io做一个这样的blog很容易,类似于github创建一个源,blog就原创 2017-03-22 16:30:47 · 1856 阅读 · 0 评论 -
php+hhvm
分享请标明来自:https://www.css3.io/php.html背景百度的很多项目是用php语言开发的。每当涉及到开发环境需要自己去维护时,php项目webserver的一堆东西感觉相当凌乱。促使自己必须去搞明白这些最基础的环境是如何搭建,如何配置的。以下是介绍php+hhvm的入门实践。hhvm百度的很多项目都在用时,包括百度贴吧,百度凤巢广告系统等等。 这里主要是学习搭建、配置,所有操原创 2017-03-22 16:28:41 · 2605 阅读 · 0 评论 -
v8引擎helloworld
分享请标明来自: https://www.css3.io/v8_helloworld.html背景v8引擎跟前端所用javascript语言密切相关。学习它有助于以后对node,以及浏览器内核学习。官方地址:https://developers.google.com/v8/目标从编译源码到运行helloworld 实战记录1.安装 depot_tools这个工具是用来管理v8源码以及依赖的,把原创 2017-03-22 16:25:03 · 3073 阅读 · 0 评论 -
vim undo持久化
分享请标明来自: https://www.css3.io/undo.html背景当我们在normal使用u时,可以撤销一些写入操作。比如insert模式下输入了:1234这时按一下u时,变为了:123如果你继续u时,你可以撤销一直到空。但是,中途如果文件被关闭,然后重新打开(我们经常去编辑其它文件,返回来重新打开先前的文件编辑),你会发现,不能再u了。 我们很期望重新打开文件后,可以继原创 2017-03-22 16:18:00 · 1181 阅读 · 0 评论 -
Shell中 2>&1理解
分享请标明来自: https://www.css3.io/in-the-shell-what-does-21-mean.html背景Shell脚本中经常看到有人这么写ls foo > /dev/null 2>&1快速理解i/o重定向我们使用cat命令,默认地将在屏幕看到如下输出$ cat foo.txthello world我们也可以用>符号将输出结果定向到另外的地方去,这就是i/o重定向$ c原创 2017-03-22 16:16:02 · 473 阅读 · 0 评论 -
命令行快捷键
分享请标明来自:https://www.css3.io/ming_ling_xing_kuai_jie_jian.html说明我们通常会在命令行作频繁的操作,每少敲击一个字符,也可以提高大的效率。它太频繁了,所以我们要总结。命令行下的键位与emacs的键位相同。不必追求炫酷的快捷键,最基础的练好就是最好的。注: c - ctrl m - alt/option 向前-从左到右 向后-从原创 2017-03-22 16:14:21 · 584 阅读 · 0 评论 -
callee 和 caller
callee是arguments的一个属性没有什么太大用处主要用在未命名的函数中实现递归调用functions(x) {if(x return x * arguments.callee(x-1);}原创 2014-02-10 11:07:58 · 646 阅读 · 0 评论 -
浏览器兼容能力检测技巧
以前浏览器兼容能力检测是这样的if(window.pageYOff){ //code}当然这可以正常工作,但它并不一定有很好的效率。因为这个对象探测方法会在浏览器中初始化资源。在过去,上面的代码片断可能会在某些浏览器下导致内存泄露。更好、更快的方法是检查对象是否包含某个键名:if("pageYOff" in window){ //code}键名检查十分简单,而且可以原创 2014-02-10 10:52:40 · 826 阅读 · 0 评论 -
基于动画的滑动类封装
/* @ 滑动类===================================*//* * @ 调用方式 new Slide({ stage: M.$("#JS_slide_stage"), indexDom: M.$("#JS_slide_nav"), indexList: M.$(".a", "#JS_slide_nav"), prevBtn: M.$("#JS原创 2014-01-03 11:39:29 · 606 阅读 · 1 评论 -
js 动画封装
/*------------------------------------------------------------------------------------ * 动画类 * @param {object} dom 执行动画的dom * @param {object} list css样式列表,如{marginLeft:'200px',width:原创 2014-01-03 11:37:08 · 943 阅读 · 1 评论 -
那些我应该谨记的
浮动不与非浮动成兄弟ff不支持innerText原创 2014-01-03 10:54:50 · 566 阅读 · 0 评论 -
valueOf && toString
function A(){ this.a = { toString:function(){ return "5"; }, valueOf:function(){ return 1; } }}var a = new A();a.a + "1" //为"11"function A(){ this.a = { toString:fu原创 2014-01-03 10:48:04 · 555 阅读 · 0 评论 -
table tr 设置border ie6.7无效
table tr 设置border ie6.7无效 需要在td上设置td{padding: 15px;border-collapse:collapse;border-bottom:solid 1px #e8e8e8;}参考地址:http://hi.baidu.com/fhyswallow/item/360e92af59dacb3a030a4d6a原创 2014-01-03 10:42:12 · 803 阅读 · 0 评论 -
display:inline-block 使用说明
一,内联元素下,使用inline-block,ie各版本都支持。(已测试)二,块级元素下,使用inline-block,ie8 及其以上支持。需要支持ie6及其以上解决方案:zoom:1;display:inline-block;*display:inline;(已测试ie6,7)注意顺序,有些blog说display:inline-block;与*display:inli原创 2013-11-20 00:24:59 · 1137 阅读 · 0 评论