摘要: 之前有听到同学问css3相关方面的笔试题,用css3实现一些css2比较麻烦的布局,需要实现的是这样一个功能。其实这里还是有多重实现方式的一:使用css3的宽度计算功能我看到上面这个第一反应就是css3的数值可以计算!但是记得不太清楚了,具体怎么计算的还是需要网上查查,恩,结果就是这个样子的:直接定义后面的宽度就好,这样子很方便,也很好理解ps:值得注意的是,如果item不使用float布局的话,要考虑一个字符大小的问题,因为div之间是有空格的,所以需要把字符大小改为0,但是safari有默认的最小字符大小,所以如果需要紧靠在一起的话,还是用float好一点二:使用弹性框(flexbox)如 阅读全文
posted @ 2013-09-17 16:12 小斯新手 阅读(232) 评论(0) 推荐(0) 编辑
摘要: ajax现在运用的十分广泛,如果不会ajax你都不好意思说你会js。。。。。。真是尴尬,我就只会一点点。 恩,之前有想过用iframe做静态网页的模板,因为有些朋友拜托的网页都很简单,静态的,一般都是一个统一的导航,然后有几个简单的不同的子页面之类的。所以我打算弄个简单的模板,用来使用在这类页面上,iframe的话,js操作的时候会遇到this指针指向错乱(全局情况下),总是使用parent等麻烦事情。 后来想到用ajax,用ajax调用页面内容然后加载进入我需要的页面,这也可以实现统一。 好的,请求ajax并不是很大的问题,主要是 1.如何把ajax请求的html字符串截取到... 阅读全文
posted @ 2013-09-06 16:56 小斯新手 阅读(404) 评论(0) 推荐(0) 编辑
摘要: 长久以来,小弟在做js动画的时候都是使用setTimeout和setInterval,这两个是js里的经典方法了,听过把函数放入执行队列,可以循环我们要的函数 但是这两个方法也有很大的问题,最明显的一点就是不能保证回调函数按时执行(丢失帧),导致画面效果不流畅(话说chrome这方面倒是优化的很不错,时间挺准的),现在有一个新的方法,requestAnimationFrame,这个方法的使用类似setTimeout requestId = window.requestAFrame(render);这样就会在下一帧的时候执行render方法,而且你可能注意到了,这个方法没有设置回调时间,因... 阅读全文
posted @ 2013-08-28 16:11 小斯新手 阅读(322) 评论(0) 推荐(0) 编辑
摘要: 近来有想弄弄有趣的东西,3D的页面效果,自然会想到webGL,但是介于以前一直没用过,这次也算是初体验了。初体验的话总是让人有激情,但是这次让我太难受了。。。。。。 为什么呢?因为webGL的初始化太蛋疼了,入门就要比canvas麻烦很多,而且如果用原生api的话各种不会看不懂啊!!!!!。好吧,抱怨完了,写在我们如果要开始webGL之旅需要一些什么 创建一个canvas元素 获取canvas的上下文 初始化视口(viewport)创建一个或者多个包含渲染数据的数组(通常为顶点数组) 创建一个或者多个矩阵,将顶点数组变换到屏幕空间中创建一个或者多个着色器来实现绘制算法使用参数初始化着色器... 阅读全文
posted @ 2013-08-26 15:38 小斯新手 阅读(567) 评论(0) 推荐(0) 编辑
摘要: javascript内的继承分类——传统继承(classical inheritance)和现代继承(modern inheritance) 传统继承就是指类式的继承,思维方式较为贴近Java等类式面向对象语言。 1.类式继承模式#1——默认模式 默认模式就是最基本的原型链模式,通过给子构造函数的prototype添加父构造函数的实例化对象,这样就把父构造函数实例化的对象保存在prototype属性内 function Parent(name){ this.name=name||"xiaosi"; } Paren... 阅读全文
posted @ 2013-08-15 17:59 小斯新手 阅读(317) 评论(0) 推荐(0) 编辑
摘要: 1.sandbox沙盒模式 沙盒模式是一种比较常见的模式,YUI就是用这种模式实现的 沙盒模式特点: 1.沙盒模式提供了一个可用于模块运行的环境,并且不会对其他模式和个人沙盒造成任何影响 2.沙盒模式和命名空间模式对比把对单个全局变量的依赖变为对应用程序的全局变量依赖 3.按需加载需要的模块,代码模块性更强 sandbox的简单实现:(ps:sandbox只是一个构造函数)function Sandbox() { //将传入的参数转化为一个数组 var args = Array.prototype.slice.call(argum... 阅读全文
posted @ 2013-08-15 11:12 小斯新手 阅读(290) 评论(0) 推荐(0) 编辑
摘要: function abcd(){ console.log(aa); //undefined console.log(aa); //not defined(报错!!) var aa=bb=cc=dd=0; console.log(aa); //0 } abcd(); 声明:本文只是自己的感悟,学习原址:http://www.cnblogs.com/TomXu/archive/2012/01/1... 阅读全文
posted @ 2013-08-09 17:54 小斯新手 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 1.闭包的概念 闭包是指有权访问另一个函数作用域中的变量的函数(注意:闭包是个函数),创建闭包的常见方式是在一个函数内部创建另一个函数(ps:闭包不等于匿名函数,凡是在一个函数内部创建的函数并且内部引用到了外部函数的变量的函数都可以称为闭包,实际上,javascript内的所有函数都是闭包,因为都有作用域链) 2.闭包的现象 先上一个例子: function createFunction(name){ var newFun=function(){ alert(na... 阅读全文
posted @ 2013-08-07 17:53 小斯新手 阅读(411) 评论(0) 推荐(0) 编辑
摘要: 1.使用Function代替eval 在任何情况下,使用字符串去执行javascript都不是一个好主意,而使用eval更是坏的方案——你没办法去判断这个字符串执行之后是否安全,稍微好点的办法就是用闭包来执行eval或者使用Function(更直观一点)。这样如果不是恶意代码的话,尽可能减少全局变量的个数(如果是恶意代码,把结果放在window内就可以变成全局变量了,所以并没有解决实际问题) console.log(typeof un); //undefinde console.log(typeof deux); //undefinde ... 阅读全文
posted @ 2013-08-05 21:33 小斯新手 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 小弟最近换个新环境,不能用自己的电脑了,原来电脑里面装的编辑器也是不能使用了,现在需要一个轻量级的编辑器,有人推荐sublime text2,恩用了之后感觉界面还是很清晰,简洁的,但是插件需要自己安装,而且安装之后管理不是很方便,智能提示又有点蛋疼,后来就果断换了现在在使用的编辑器 Edge Code CC,adobe的东西,感觉还是靠得住的,也是属于轻量级(相比于dw的话) 但是之前用的时候发现有个问题——打开压缩过的代码时候会卡死,Edge Code CC会没有反应,需要等待很长的一段时间才能看到压缩的代码。。这个问题在mac和win7版本上都有 解决方案:打开压缩过的代码,等待... 阅读全文
posted @ 2013-07-31 09:12 小斯新手 阅读(794) 评论(0) 推荐(0) 编辑