[置顶] 设计模式分类(创建型模式、结构型模式、行为模式)

1.创建型模式 前面讲过,社会化的分工越来越细,自然在软件设计方面也是如此,因此对象的创建和对象的使用分开也就成为了必然趋势。因为对象的创建会消耗掉系统的很多资源,所以单独对对象的创建进行研究,从而能够高效地创建对象就是创建型模式要探讨的问题。这里有6个具体的创建型模式可供研究,它们分别是: 简单工厂模式(Simple Factory) 工厂方法模式(Factory Method) 抽象工厂模式(Abstract Factory) 创建者模式(Builder) 原型模式(Prototype) 单例模式(S...
阅读(5602) 评论(2)

[置顶] 个人总结

浏览器兼容性问题又被称为网页兼容性或网站兼容性问题,指网页在各种浏览器上的显示效果可能不一致而产生浏览器和网页间的兼容问题。在网站的设计和制作中,做好浏览器兼容,才能够让网站在不同的浏览器下都正常显示。而对于浏览器软件的开发和设计,浏览器对标准的更好兼容能够给用户更好的使用体验。 因为不同浏览器使用内核及所支持的HTML(标准通用标记语言下的一个应用)等网页语言标准不同;以及用户客户端的环境不同(如分辨率不同)造成的显示效果不能达到理想效果。最常见的问题就是网页元素位置混乱,错位。...
阅读(1861) 评论(1)

Sass预编译语言之@mixin混合的几种声明和调用方式

sass中使用@mixin声明混合,可以传递参数,参数名以$符号开始,多个参数以逗号分开,也可以给参数设置默认值。 声明的@mixin通过@include来调用。1、声明一个没有参数的 @mixin,设置盒模式水平居中的样式@mixin block-center { margin-left:auto; margin-right:auto; }调用方式:@include block-...
阅读(109) 评论(0)

预编译语言Sass中几种常用的写法

在项目中用到了sass的语法,为了写出更简洁使用的代码,要不断地温习,所以今天把sass的语法温习了一遍;提供一个在线编译工具:sass编译工具 .box { font-size:10px; // sass3.3.0中新增的功能,用来跳出选择器嵌套的。 // 默认所有的嵌套,继承所有上级选择器,但有了这个就可以跳出所有上级选择器。 // 普通跳出嵌套 单个选择器跳出 @at-ro...
阅读(71) 评论(0)

JavaScript中JSON对象

JSON的语法可以表示以下三种类型的值。 * 简单值:使用与JavaScript相同的语法,可以在JSON中表示字符串、数值、布尔值和null 。但JSON不支持JavaScript中的特殊值undefined。 * 对象:对象作为一种复杂数据类型,表示的是一组有序的键值对儿。而每个键值对儿中的值可以是简单值,也可以是复杂数据类型的值。 * 数组:数组也是一种复杂的数据类型,表示一组有序的列表,可以通过数值索引来访...
阅读(65) 评论(0)

纯CSS3实现移动端展开和收起效果

纯CSS3实现移动端展开和收起效果 采用技术点: CSS3中的伸缩盒布局Flexible Box Layout CSS中的关系选择符 CSS中的伪类选择符 CSS中的属性选择符...
阅读(160) 评论(0)

如何用CSS打造评论功能中的星级打分效果

默认样式鼠标划上去样式:HTML代码: 分析一下第一步:我们要添加十个元素标签上去。第二步:默认情况要给每个元素添加一个默认图片对吧第三步:当鼠标划上UL标签后,让每一个标签都有一个选中状态的背景图片第四步:CSS的关系选择器中有一个E~F, 它是兄弟...
阅读(149) 评论(0)

JS事件之事件类型[鼠标和滚轮事件]

鼠标事件是Web开发中最常用 的一类事件,毕竟鼠标还是最主要的定位设备。 DOM3级事件中定义了9个鼠标事件。 简介 如下: click:在用户单击主鼠标按钮(一般是左边的按钮)或着按下回车键时触发。 这一点对确保易访问性很生要, 意味着onclick事件处理程序即可以通过键盘也可以通过鼠标执行。 dblclick:在用户双击主鼠标按钮时触发。从技术 上来,这个事件并不是DOM2级事件规范中规定的,...
阅读(105) 评论(0)

JS事件之事件类型[焦点事件]

焦点事件会在页面获得或失去焦点时触发。利用这些事件并与document.hasFocus()方法及document.activeElement属性配合,可以知晓用户在页面上的行踪,有以下6信焦点事件: blur:在元素失去焦点时触发。这个事件不会冒泡;所有浏览器都支持它; DOMFocusIn:在元素获得焦点时触发。这个事件与HTML事件focus等价,但它冒泡,只有Opera支持这个事件;DOM3...
阅读(170) 评论(0)

JS事件之事件类型[UI事件]

Web浏览器可能发生的事件类型有很多。不同的事件类型具有不同的信息,而“DOM3级事件“规定了以下几类事件。 UI(User Interface,用户界面)事件,当用户与页面上的元素交互时触发; 焦点事件,当元素获得或失去焦点时触发; 鼠标事件,当用户通过鼠标在页面执行操作时触发; 滚轮事件,当使用鼠标滚轮(或类似设置)时触发; 文本事件,当在文档中输入文本时触发; 键盘事件,当用户通过包租在页面上...
阅读(108) 评论(0)

DOM节点层次图

Node节点继承的层次关系...
阅读(75) 评论(0)

JavaScript执行环境

执行环境(execution context)是Javascript中最为重要的一个概念。执行环境定义了变量或函数有权访问其它数据,决定了它们各自的行为。每个执行环境都有一个与之关联的变量对象,环境中定义的所有变量和函数都保存在这个对象中。虽然我们编写的代码无法个对象,但解析器在处理数据时会在后台 使用它。全局执行环境是最外围的一个执行环境。根据ECMAScript实现所在的宿主环境不同,表示执行环...
阅读(133) 评论(0)

为什么我的电脑这么卡(system占用CPU这么高)

最近我的电脑一直很卡,卡到打开一个文件目录也要等上一二秒的时间,我是通过网上查找资料,最后发现是QQ浏览器的问题。把它卸载后打开文件瞬间变快了。操作步骤: 第一步:先去下载一个progress explorer软件,安装后,打开找到System: 第二步:双击system后,会打开一个属性,找到Threads标签,通过CPU排序看那个占用的最高,发现是“TsQBDrv”调用最高。 第三步:选中...
阅读(326) 评论(0)

JS用Canvas绘图-基本语法

不用说,HTML5添加的最爱欢迎的功能就是元素。这个元素负责在页页中设置一个区域,然后就可以通过JavasScript动态地在这个区域中绘制图形。元素最早是由苹果公司推出的,当时主要用在其Dashboard微伯中。很快,HTML5加入了这个元素,主流浏览器也迅速开始支持它。IE9+、Firefox1.5+、Safari2+、Opera9+、Chrome、IOS版Saf...
阅读(148) 评论(0)

JS事件--事件对象之DOM中的事件对象

在触发DOM上的某个事件时,会产生一个事件对象event,这个对象中包含着所有与事件有关的信息。包括导致事件的元素、事件的类型以及其他与特定事件相关的信息。例如,鼠标操作导致的事件对象中,会包含鼠标位置的信息,而键盘操作导致的事件对象中,会包含与按下的键有关的信息。所有浏览器都支持event对象,但支持方式不同。兼容DOMr浏览器会将一event对象传入到事件处理程序中。无论指定的事件处理程序时使用...
阅读(131) 评论(0)

JS事件--事件处理程序之DOM2事件处理程序

“DOM2级事件”定义了二个方法,用于处理指定和删除事件处理程序操作:addEventListener()和removeEventListener()。所有DOM节点中都包含这二个方法,并且它们都接受3个参数:要处理的事件名,作为事件处理程序的函数和一个布尔值。最这个布尔值参数如果是true,表示在捕获阶段调用事件处理程序。如果是false,表示在冒泡阶段调用事件处理程序。要在按钮上为click事件...
阅读(155) 评论(0)

JS事件-事件处理程序之DOM0级事件处理程序

通过JavasScript指定事件处理程序的传统方式,就是将一个函数赋值给一个事件处理程序属性。这种为事件处理程序同仁的方式是在第四代Web浏览器是出现的,而且至今仍然为所有现代浏览器所支持。原因一是简单,二是具有跨 浏览器的优势。要使用JavasScript指定事件处理程序,首先必须取得一个要操作的对象的引用。每一个元素(包括window和document)都有自己的事件处理程序属性,这些属性通常...
阅读(135) 评论(0)

JS事件--事件处理程序之HTML事件处理程序

某个元素支持的每种事件,都可以使用一个与相应事件处理程序同名的HTML属性来指定。这个特性的值应该是能够执行的JavasScript代码。例如,要在按钮被单击时执行一些JavasScript,可以像下面这样编写代码:当单击这个按钮时,就会一个警告框。这个操作是通过指定...
阅读(126) 评论(0)

JS事件-事件处理程序之跨浏览器事件处理程序

为了以跨浏览器的方式处理事件,不少开发人员会使用能够隔离浏览器差异的JavasScript库,还有一些开发人员会自己开发最合适的事件处理方法。自己编写代码的其实也不难,只要恰当地使用能力检测即可。要保证处理事件的代码能在大多数浏览器下一致地运行,只需关注冒泡阶段。第一个要创建的方法是addHandler(),它的职责是视情况分别使用DOM0级方法、DOM2级方法或IE方法来添加事件。这个方法属于一个...
阅读(102) 评论(0)

JS事件-事件处理程序之IE事件处理程序

与访问DOM中的event对象不同,要访问IE中的event对象有几种不同的方式,取决于指定事件处理程序的方法。在使用DOM0级方法添加事件处理程序时,event对象作为window对象一个属性存在。来看下面例子。 var btn = document.getElementById('myBtn'); btn.onclick = function() { var event = window...
阅读(152) 评论(0)

JS创建对象之寄生构造函数模式

通常,在前述的几种模式都不适用的情况下,可以使用寄生构造函数模式。这种模式的基本思想是创建一个函数,该函数的作用仅仅是封闭创建对象的代码,然后再返回新创建的对象;但从表面来看,这个函数又很像是典型的构造函数。下面是一个例子: function Person(name, age, job) { var o = new Object(); o.name = name; o.age...
阅读(194) 评论(0)

JS创建对象之组合使用构造函数模式和原型模式

创建自定义类型的最深见方式,就是组合使用构造函数模式与原型模式。构造函数模式用于定义实例属性,而原型模式用于定义方法和共享的属性。结果琽附有自己的一份实例属性的副本,但同时又共享着对方法的引用,最大限度地节省了内存。另外,这种混成模式还支持向构造函数传递参数,可谓是集瓗模式之长。下面的代码重写了前面的例子。function Person(name, age, job) { this.name...
阅读(126) 评论(0)
338条 共17页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:784771次
    • 积分:9874
    • 等级:
    • 排名:千里之外
    • 原创:270篇
    • 转载:67篇
    • 译文:1篇
    • 评论:153条
    博客专栏
    最新评论