原文:An Introduction To The HTML5 History API
译文:关于HTML 5 History API 的介绍
译者:dwqs
History是有趣的,不是吗?在之前的HTML版本中,我们对浏览历史记录的操作非常有限。我们可以来回使用可以使用的方法,但这就是一切我们能做的了。
但是,利用HTML 5的History API,我们可以更好的控制浏览器的历史记录了。例如:我们可以添加一条记录到历史记录的列表中,或者在没有刷新时,可以更新地址栏的URL。
为什么介绍...
延迟加载,亦称延迟实例化,延迟初始化等,主要表达的思想是,把对象的创建将会延迟到使用时创建,而不是在对象实例化时创建对象,即用时才加载。这种方式有助于提高于应用程序的性能,避免浪费计算,节省内存的使用等。针对于这种做法,似乎称之为即用即创建更为合适些。先来看一下在Framework4.0中如何实现延...
lock关键字将语句块标记为临界区,方法是获取给定对象的互斥锁,执行语句,然后释放该锁。class Program { static void Main(string[] args) { Thread t = new Thread(LockOb...
事件,是C#编程模型中重要的一个概念,通过对事件的理解,可以更好的了解C#程序运行机制。C#中的事件,可以简单的理解为类或者对象发生了一件事,并且把这件事通知给了其他的类或者对象,其他的类或者对象可以根据事件的消息有所反应。这非常类似设计模式中的观察者模式。引发事件的类或对象,可以称之为事件源,注册...
写服务时,都需要为定时器写不少的代码,感觉很麻烦,今天把这些代码封装一下,希望能简化一下这方面的工作,把精力都集中在功能上本定时器组件,每次只启动一个服务实例进行处理,而不会同时多次执行服务代码。下面是应用实例从组件类派生一个子类,可以看到,需要写的代码很少using System; using.....
当文件过大时,无法一次性载入内存时,就需要分次,分段的载入文件主要是用了以下的WinAPILPVOID MapViewOfFile(HANDLE hFileMappingObject, DWORD dwDesiredAccess, DWORD dwFileOffsetHigh, DWORD d...
一个使用私有堆的例子:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = clas...
一、在C#中,要使用正则表达式类,请在源文件开头处添加以下语句:using System.Text.RegularExpressions;二、RegEx类常用的方法1、静态Match方法使用静态Match方法,可以得到源中第一个匹配模式的连续子串。静态的Match方法有2个重载,分别是Regex.M...
博超电气设计EES2000 1CD 理正给排水8.02(单机版)基础及桩基CAD 2003 SATWE接口补丁理正给排水、设备6.5理正工具箱4.51理正基础CAD 2.3理正桩基CAD 2.7理正深基坑5.3 1CD理正基坑5.04理正岩土计算5.1(所有模块都好用)理正岩土4.0说明书土方工程量...
觉得雨林木风win7系统本身的office2007不好,但不能卸载,用360强力删除工具,把整个安装的文件夹全部删除,重新用之前能够在另外xp和win7系统成功安装的破解版office2007,安装开始就很慢,到了一半的时候突然出错。以为是之前版本的很多注册信息驻留在注册表,删除了一些相关注册表信息...
var R: TRect;begin//Form1.Canvas.TextOut(20,20, '说明'); R:=Rect(20, 20, 120, 70); DrawText(Canvas.Handle, '说明', -1, R, DT_END_ELLIPSIS);end;//在...
1.无参属性 1.为什么有字段还需要属性呢? 因为字段很容易写出不恰当的代码,破坏对象的状态,比如Age=-1。人的年纪不可能为负数。使用属性后你可以缓存某些值或者推迟创建一些内部对象,你可以以线程安全的方式来访问字段,字段可能是一个逻辑字段,它的值需要某个方法类计算得到。 属性可以给set...
有时候我们的程序需要进行音频的播放,则我们首先需要判断机器是否有声卡能够进行音频的播放。在网上找了一下没有发现太多关于如何检机器是否有声卡的例子。我在看了一些文档后自己写了一个小测试程序,如果机器装有.Net FrameWork 则可以使用如下代码:class Program { ...
函数由一句或多句代码组成,可以实现某个特定的功能。使用函数可以使代码更加易读、易懂,加快编程速度及减少重复代码。过程与函数类似,过程与函数最重要的区别在于,过程没有返回值,而函数能有返回值。 在Delphi 7.0中,已为我们定义好了非常多的函数,大致分类有6种:数据类型转换函数、字符串、数...
下面是两个函数,用来执行一个外部程序,缺省是异步执行同步调用方法 RunProgram('c:\aa.exe',true);参考IsProgram_Runing函数,你也可以调用RunProgram('c:\aa.exe')先异步执行,然后根据返回的进程句柄,自己判断程序是否执行结束。// 异步执行...