随笔分类 -  前端技术

js,jq,vue,angularjs,knockoutjs,reactjs等
摘要:在jquery里有两个方法可以用来绑定自动追加出来的DOM对象,它们是live和delegate,事实上,这两个方法是bind方法的一个变体,在对于固定DOM对象时,我们通常使用bind就可以了,而对象动态产生的DOM对象,使用bind就无能为力了,这时live和delegate就出场了,呵呵。live方法,用来绑定某个(某类)对象,为它们绑定方法 //live $("td").live("click", function () { alert($(this).html()); }); ... 阅读全文
posted @ 2013-12-21 09:56 张占岭 阅读(3315) 评论(1) 推荐(0)
摘要:无意中看到anytao的项目,工作台,使用了Angularjs框架,感觉在前端表现上用户体验比较好,于是就简单看了一下,原来使用很简单,或者说,人家把代码封装的很好,以至于开发人员调用时比较简单,呵呵,使用Angularjs必须将你的html标记进行标识一下,告诉人家,我要用Angularjs来渲染页面了,事实上,Angularjs带合我们最重要的不是页面表现上,而是数据绑定上,它使HTML标记不那么死板,下面看一个DEMO就会明白了。下面是一个页面元素绑定的例子 Enter name: Hello ! //对应的JS代码如下: funct... 阅读全文
posted @ 2013-12-04 10:12 张占岭 阅读(8862) 评论(0) 推荐(2)
摘要:百度百科给它的定义实现实时通信。什么是实时通信的Web呢?就是让客户端(Web页面)和服务器端可以互相通知消息及调用方法,当然这是实时操作的。WebSockets是HTML5提供的新的API,可以在Web网页与服务器端间建立Socket连接,当WebSockets可用时(即浏览器支持Html5)Si... 阅读全文
posted @ 2013-11-25 22:14 张占岭 阅读(25884) 评论(32) 推荐(9)
摘要:返回目录众所周知redis量个强大的缓存组件,可以部署在win32和linux环境之上,它有五大存储结构,其中有一种为列表list,它可以实现quene和stack的功能,即队列和堆栈的功能。redis相关文章,可以看我的相关博文《Redis学习笔记~目录》,redis实现消息队列,可以看我的《Re... 阅读全文
posted @ 2013-11-21 18:04 张占岭 阅读(35642) 评论(2) 推荐(4)
摘要:回到目录上一讲中,我们学习了如何使用zTree对一棵大树(大数据量的树型结构的数据表,呵呵,名称有点绕,但说的是事实)进行异步加载,今天这讲,我们来说说,如何去操作这棵大树,无非就是添加子节点,删除节点,编辑节点,节点之间的拖拽,节点位置的变化(排序)等等。事实上,jquery.ZTree的demo已经把前台JS代码给的很清晰了,我们只要稍加修改,然后把后台CS代码写好就可以了,我将demo的前台代码做了简单的处理,减化了些代码,项目架构使用microsoft mvc 3.0前台HTML代码如下: 面各种JS事件,所对应的MVC代码如下:#region 对节点的操作 ///... 阅读全文
posted @ 2013-07-04 15:22 张占岭 阅读(5955) 评论(2) 推荐(2)
摘要:回到目录理论部分:MVC+ZTree:指在.net MVC环境下进行开发,ZTree是一个jquery的树插件大数据:一般我们系统中,有一些表结构属于树型的,如分类,地域,菜单,网站导航等等,而像分类这种表,它的数据量是递增的,不同遇见的,可能几条,几万条,而随着站点的运营,也可能达到几十万条,如果这样的大数据,采用一次读数据到页面的方式,是不可取的,先不说给服务器的压力有多大,只是客户端的浏览器估计就要挂掉,谁愿意加载一个页面等上10多分钟呀,呵呵!异步加载:这种方式已经成为主流,异步事实上是指与当前UI线程不冲突,浏览器不会假死,你的获取数据的动作会重新开启一个通道(线程)来与服务器进行通 阅读全文
posted @ 2013-06-25 09:55 张占岭 阅读(8356) 评论(15) 推荐(4)
摘要:最近在做项目时,遇到一个需求,事实上就是表单联动的问题,单击单选框,下面的复选框联动,当第一次加载时,默认触发第一个单选框,如图:之前的方法,没有完成我的要求,第一次加载时,公司被选中,再“角色”这块并没有触发指定事件,代码如下: //首次加载时,模拟Dept单击事件 $("input[name=Dept]").first().trigger("click"); //Dept单击事件 $("input[name=Dept]").live("click", function () { var deptid = $(& 阅读全文
posted @ 2013-05-06 11:01 张占岭 阅读(2590) 评论(0) 推荐(0)
摘要:参考文章:http://www.w3school.com.cn在我们使用CSS时,经常看到margin:0 0,margin:0 5px,padding:0 5px 10px;而它们研究是什么含义呢,在WEB标准中,它们会有以下含义,它适合于CSS中的margin,padding,border-style等属性第一种情况,四个值都有,它们的含义如下属性:上 右 下 左第二种情况,只有三个值,它们的含义如下属性:上 右左 下第三种情况,只有两个值,它们的含义如下属性:上下 右左第四种情况,只有一个值,它们的含义如下属性:上下右左注意,如果属性值为0,可以不加单元直接是属性:0;如果不... 阅读全文
posted @ 2013-04-12 14:51 张占岭 阅读(1796) 评论(2) 推荐(0)
摘要:JQ也要面向对象,事实上,无论哪种开发语言,在开发功能时,都要把面向对象拿出来,用它的思想去干事,去理解事,面向对象会使问题简单化,清晰化,今天说两个概念“静态方法”与“实现方法”,这个在面向对象的语言中才有的东西,现在要把它搬到JQ中来了,呵呵。静态方法:某种类型才有的方法,这个方法干的事情只有类型本身有关,不受具体实例对象的影响,在C#语言中,它用static表示,VB中用share表示,而在jq中我们一般用$或者JQuery表示JQ类型,而静态方法扩展一般用$.extend。实例方法:当类型被表示为具体事物时,它被称为对象,或者实例对象,它所拥有的行为(方法)我们称为实例方法(一般书上不 阅读全文
posted @ 2013-04-12 10:27 张占岭 阅读(3612) 评论(0) 推荐(2)
摘要:大话开篇 这个系列与其它系列文章不同,不同讲具体的知识点,讲的只是实际工作中开发人员应该如何去写代码,写健壮的代码,写快乐的代码,写面向对象的代码,事实上,从一个人写的代码中,可以品味出这个人的心情,这个人对待代码的态度(注意,不是工作态度,而是代码的态度)。 作为开发人员的你,是否是为了实现一个功能,实现一个效果,而去百度一些代码,或者连自己都搞不懂自己写代码的意义呢,如果是,那您应该读一下这篇文章,它会告诉你代码是什么,如何写好代码,如何写开发者快乐的工作。什么是用心体会在我看来,用心体会,就是你发自内心去写代码,你把你的代码拟人化,它可能是你的爱人,情人,或者一个不能分开的人,只... 阅读全文
posted @ 2013-03-22 11:30 张占岭 阅读(652) 评论(3) 推荐(1)
摘要:YslowYahoo发布的一款基于FireFox的插件,主要是为了提高网页性能而设计的,下面是它提倡了23条规则,还是很不错的,分享一下:1.减少HTTP请求次数合并图片、CSS、JS,改进首次访问用户等待时间。2. 使用CDN就近缓存==>智能路由==>负载均衡==>WSA全站动态加速3. 避免空的src和href当link标签的href属性为空、script标签的src属性为空的时候,浏览器渲染的时候会把当前页面的URL作为它们的属性值,从而把页面的内容加载进来作为它们的值。测试4. 为文件头指定Expires使内容具有缓存性。避免了接下来的页面访问中不必要的HTTP请求 阅读全文
posted @ 2013-03-19 16:52 张占岭 阅读(1670) 评论(3) 推荐(1)
摘要:回到目录我很荣幸来写这个结局,有时,我们看人,物,事需要用心去看,而不是用眼睛,因为用眼睛看到的往往是事物的假像,在这里对我最可爱的兄弟说一声,对不起。从人类的起源谈面向对象,事实上主要说的是面向对象,现在我简单来说一下面向对象的特性吧,当你把一个程序写成面向对象的之后,它将有三个好处,即封装,继承和多态,这是所有面向对象语言的一个共性,而对于JS这个语言来说,也可以借鉴一下,如JS里实现封装,JS里的继承等等。JS封装:当我们干某件事时,需要将一些代码组织在一起,形成一个function,而这个过程我们称为封装,而在使用这个功能时,只要知识function的方法签名即可,你不需要管它的实现细 阅读全文
posted @ 2013-01-29 16:09 张占岭 阅读(668) 评论(1) 推荐(2)
摘要:回到目录事件机制,在JS中感觉很容易让人接受,一个鼠标被按下时会发生一些事情,一个键盘的键被抬起时同样可以发生一些事情,这种比喻很容易让人接受,不是吗,呵呵。下面我将JS中几个主要的事件说一下,然后再说一下触发事件的几个方法。JS中的主要事件说明以下是我们在项目开发中常用到的事件,红色的为最常用的事件,呵呵onclick 鼠标点击某个对象ondblclick 鼠标双击某个对象onerror 当加载文档或图像时发生某个错误onfocus元素获得焦点onkeydown某个键盘的键被按下onkeypress某个键盘的键被按下或按住onkeyup某个键盘的键被松开onload某个页面或图像被完成加载o 阅读全文
posted @ 2013-01-25 23:18 张占岭 阅读(1035) 评论(3) 推荐(2)
摘要:回到目录上一文章主要说的是JS中的类,有很多朋友回复了我的文章,在此很感谢大家,也对一些朋友提出的问题进行了回复,“类”这东西,只是一种思想,我们不应该把重点放在“某种语言是否提供类,或者是否实现了类”,这是不重要的,重要的是面向对象中的类的思想!今天主要说的是方法,JS中的方法也叫做函数function,它将一些有关系的代码组织在一起,形成一个整体,这类似于面向对象中的封装,你不需要了解方法的实现细节,你只要去调用它,了解方法的签名即可。最简单的函数(方法):<script type="text/javascript"> //加运算 function Sum( 阅读全文
posted @ 2013-01-23 22:29 张占岭 阅读(713) 评论(0) 推荐(1)
摘要:回到目录 今天来说JS中如何实现类(class),事实上本应该昨天晚上写的,可我失言了,在些说一声“抱歉”!JS中的类是JS面向对象的基础,也是我最拿手的东西,你写的代码能否提高一个层次,一般是从这点上看出来的。占占对类的定义:类是对现实中的事物的抽象,一个类一般由属性和方法构成,属性是一些固定的信息,而方法是类的某种行为,类往往用来抽象一些复杂的对象,类与类这间可以进行继承,一般通过JS的function实现,JS中的类对象是实现JS面向对象的基础。占占对结构体的定义:一个结构体也是对现实事物的一种抽象,它用来表示逻辑简单的对象,一般通过JS的object对象实现实现结构体的代码: ... 阅读全文
posted @ 2013-01-23 09:45 张占岭 阅读(1032) 评论(10) 推荐(1)
摘要:回到目录本讲主要是JS语言中的代码如何被解释执行的,这个问题其实和其它语言是一样的,程序执行顺序为“从上到下”,当然如果代码中有分支,它的执行顺序可能有所改变,而这种支在程序设计中叫做“分支结构(条件结构)”,再或者某个操作需要反复执行10次,这在程序设计中叫做“循环结构”。正常的程序结构 //普通的结构 var info = "hello world" console.log(info);带有分支的程序结构 //IF条件结构 var number = 1; if (number % 2 == 0) ... 阅读全文
posted @ 2013-01-22 18:11 张占岭 阅读(1196) 评论(5) 推荐(1)
摘要:回到目录前言javascript脚本语言,它的成功很大程度上体现在它对各大浏览器的兼容性上,各大浏览器都按着ECMAScript的标准走,这也使得javascript成为前端工程的一种必要筹码,你的JS牛,你的薪水可能就是5位数,呵呵!有人说JS就是脚本语言,一个个方法,一个个小插件,但我并不这样认为,对于任何一种开发语言来说,它都可以是面向对象的,都可以遵循着面向对象的原则去走,只有这样,你开发出现的代码才是健壮的,可读性强的,看着舒服的。javascript中的变量javascript中的变量可以分为全局变量与局部变量,当你不去var声明时,它会默认被声明为全局变量,加上var它就是当前方 阅读全文
posted @ 2013-01-22 09:43 张占岭 阅读(913) 评论(2) 推荐(2)
摘要:回到占占推荐博客索引 上周邀朋友之请,写了JQ系列,但感觉对于初学者来说,有点复杂,或者摸不着头脑,所以,这次要从0起步了,从最基础的开始写起,下面我整理了一下目录,呵呵! Javascript基础与面向对象基础~目录 第一讲 啥叫编程,啥叫程序员 第二讲 Javascript中的变量及变量的类型 阅读全文
posted @ 2013-01-21 22:54 张占岭 阅读(1236) 评论(2) 推荐(2)
摘要:回到目录百度百科中对闭包的定义: 闭包是可以包含自由(未绑定到特定对象)变量的代码块;这些变量不是在这个代码块内或者任何全局上下文中定义的,而是在定义代码块的环境中定义。“闭包” 一词来源于以下两者的结合:要执行的代码块(由于自由变量被包含在代码块中,这些自由变量以及它们引用的对象没有被释放)和为自由变量提供绑定的计算环境 (作用域)。在 Scala、Scheme、Common Lisp、Smalltalk、Groovy、JavaScript、Ruby 和 Python,objective c 等语言中都能找到对闭包不同程度的支持。占岭对闭包的定义: 对于函数A,它内部有子函数B,A函数... 阅读全文
posted @ 2013-01-18 14:03 张占岭 阅读(6482) 评论(3) 推荐(6)
摘要:回到目录前一篇文章主要介绍了如何通过JQ实现异步数据的访问与操作,写法上是最标准的.ajax完整形式,这讲主要把剩下的简写形式说一下。前言:以下是整理的异步请求时的参数说明 //$ajax异步通用参数说明,[]里面的参数是可以省略的 //url,[data],[callback],[type] //data:待发送 Key/value 参数。 //callback:载入成功时回调函数。 //type:返回内容格式,xml, html, script, json, $.load() 载入远程 HTML 文件代码并插入至 DOM... 阅读全文
posted @ 2013-01-18 13:26 张占岭 阅读(2582) 评论(1) 推荐(3)