自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

原创 如何实现指定frame的单独前进、后退?

问题:如果一个页面有两个frame,frame1和frame2,如果frame1从link1跳转到了link2,然后frame2从link3跳转到了link4,此时如果想让frame1从link2退回到link1,如何办到?目前的浏览器中,点回退按钮,第一步肯定是frame2从link4退回到link3,再次点回退,才能使frame1从link2退回到link1.问题根源:浏览器的hist

2013-03-22 13:03:02 1775

原创 CEF一探

之前一直在用WebKit,没有用chromium,一则Chromium太大,二则对于我们而言Chromium实在有点奢侈,于是一直是在WebKit的基础上进行修改优化。于是乎产生了一系列问题,比如cairo库实在效率低,又比如JSC比V8差得还蛮远的。。。最近终于痛下决心把CEF整合了一下,目测效果还是很不错的。

2013-03-22 12:49:28 1627 3

原创 WebKit中RefPtr和PassRefPtr的使用

简单的说,RefPtr变量被赋值时,引用计数加1,当这个变量赋值给其他变量时,引用计数减1。PassRefPtr和RefPtr一样,被赋值和赋值给其他变量时,引用计数会发生变化。除此之外,当PassRefPtr变量赋值给另外一个PassRefPtr或者RefPtr变量时,其本身的计数器将会变成0。所以赋值一般用这种形式:static RefPtr g_oneRingToRuleTh

2012-02-15 11:05:29 1125

原创 话说localStorage的实现

Chrome实现localStorage与WebKit实现的方式差异很大,但是到了最底层数据库的存储还是走到了一起。如果只是通过WebKit实现localStorage的话需要做一些具体的工作:1. 首先让webview实例知道localStorage存储的具体位置,这个位置在WebKit based的浏览器中是默认在%AppData%\Local\Apple Computer\W

2011-12-09 20:57:53 2884 2

原创 编译V8

编译V8整体说来还是比较简单的,按照http://code.google.com/p/v8/上的instructions一步一步没有太大问题。这里记录一下具体的步骤:1. 安装SVN2. 安装python,最好是2.4以上版本3. 安装scons.4. 验证上面三个是否成功:svn --versionpython -Vscons --version如果有一个没有成功

2011-11-23 20:16:33 2447

原创 WebKit实现Chrome插件

这几天一直忙着在WebKit中实现Chrome的Extension。首先从标准来说还是完全遵循Chrome extension的标准,当然包括manifest.json文件的解析。接下来的任务分两块:1. 插件service:提供一些接口供调用者操作插件,如插入插件、禁用插件、启用插件等。2. 插件的管理:如何加载插件到application,调用插件service的接口实现插件管

2011-11-05 15:48:12 1103 1

原创 WebKit编译之cairo

今天把WebKit的最新代码下下来编了一个cairo版,有一些注意事项需要注意:1. python的版本不能低于2.5,最好是2.6以上。一开始我是用2.4,编译出错。2. cairo的依赖文件通过以下命令得到:update-webkit --wincairo3. 有几个文件编码有问题,好在只是一些字符串,把乱码改掉就好了4. 用VS2005打开,选择cairo编译项DONE.

2011-11-05 15:41:28 2787 1

原创 如何让页面监测Iframe页面的状态?

不知道这个应用有多少场合会用到呢?反正我们目前需要这样的需求。目前通过javascript似乎没法监测子页面的状态,虽然HTML5给IFrame加了一个contentDocument,但是仍然无法通过这个对象将子页面的状态返回给父页面的js来监测。于是乎,

2011-10-13 19:31:19 2241

原创 今天追WebKit的一个crash,追了一天也没有出现!

不是不出现,而是时候未到!继续追!

2011-10-13 19:23:30 524

原创 悼念Jobs

默哀~~神一样的Jobs在原来的公司,有一个法国人叫Pierre,跟Jobs很像,严谨,渊博,富有创造力。感慨国内的教育,很难培养出这样的人才啊!

2011-10-06 13:55:38 750

原创 WebKit的第三方库之CFLite

整个WebKit工程包括了很多的第三方库,其中一个是OpenCFLite。OpenCFLite是一种便携式版本的苹果公司的开源CoreFoundation框架。(这句话拷贝自网络。)那么CoreFoundation又是什么呢?CoreFoundation的目的是提供基

2011-10-05 13:36:10 2502

原创 编译WebKit

要想了解WebKit,首先需要找到它的源代码。这个比较简单,因为我们可以通过http://www.webkit.org/找到每天的WebKit的版本,当然你也可以通过SVN checkout自己想要的版本,可以保证的是这些版本99%都能编译通过,除了个别的commit会有例外,比

2011-10-05 12:32:21 1224

原创 WebKit shortcut

Currently, those occupy most space in WebKit, as I know, are SVG and multi-language package. Remove SVG is very confused because we cant implement this by disabling the SVG switcher or remove SVG

2011-06-09 15:53:00 514

原创 WebKit JS extension Conclusion (4)

So far(from JS extention 1, 2 and 3), in WebKit JS engine, we can1) add functions2) add callback functions3) add global objects4) add attributes and functions for an extenal global object 

2011-06-09 15:39:00 741

原创 WebKit JS callback functions(3)

In JSC, we can implement an JS function easily, however it may be hard for us to implement an JS function with one or more callback functions, like: window.ourOwnFunction("param1", "param2", funct

2011-06-09 15:32:00 1296 4

原创 WebKit and offlineCache

Refer to http://www.w3.org/TR/html5/offline.html to see the spec for HTML5 offline application cache.1. Write a normal html file with js files and css files2. Change to 3. write a file named "test.manifest" as following:CACHE MANIFEST# v0.1test.html# Stan

2011-05-18 15:44:00 942 1

原创 网络文章

<br />1. 10个让你欲罢不能的Gmail扩展:http://sd.csdn.net/a/20110513/297790.html<br />2. Google Storage开放给所有人使用,增加新功能<br />3. Google开发下一代JavaScript编译器Traceur: http://sd.csdn.net/a/20110506/297308.html<br />4. Adobe成立HTML5研发中心!http://sd.csdn.net/a/20110505/297246.html<

2011-05-15 23:32:00 481

原创 libcurl in WebKit

<br /><script><br />document.cookie="test=a";<br /></script><br /> <br />In WebKit, this kind of cookies can't be send to server. Let's analysis the reason:<br /> <br />In WebKit, this kind of cookie will be parsed by JS engine, and then store to libcurl C

2011-05-14 00:25:00 640

原创 WebKit中字符串操作总结

1. BSTR to String    BSTR resultBSTR;    String result;    result = String(resultBSTR, SysStringLen(resultBSTR));    SysFreeString(resultBSTR);  // Inside WebKit  String result = toString(

2011-05-11 13:07:00 1279

原创 WebKit JS extension (2)

How to add a global function in JS?1. DOMWindow.h    void test();2. DOMWindow.cpp    void test()    {        runTest();    }3. Implement runTest in the following files:    Chrome.h(.cpp)    ChromeClient.h    WebChromeClient.h(.cpp)    WebInspectorDelegate.

2011-05-11 12:47:00 1320 5

原创 WebKit Drag & Drop

1. DragDestination    dragDestinationActionMaskForDraggingInfo : WebKit asks for the dragging types which are allowed by client    willPerformDragDestinationAction : WebKit allows clients to handle this action first. However in my mind, this interface shou

2011-05-11 11:51:00 715

原创 WebKit网络连接数

<br />每个host允许最大连接数:6<br />每个host无限制连接数:10000<br /> <br />非http协议最大请求数:20<br /> <br />前提:REQUEST_MANAGEMENT_ENABLED

2011-04-25 11:46:00 621

原创 Extern JS DOM in WebKit (1)

How JSDOMWindow.h and JSDOMWindow.cpp generated?One word: it's generated by CodeGeneratorJS.pm.But sometimes you might say that the js object has been defined, but why its related function does not appear in the JSDOMWindow.h file?Then you can modify this

2011-04-21 11:04:00 925

原创 How to integration google_breakpad to WebKit

<br />1. Copy google_breakpad from chromium<br />2. Change some compile options:<br />    Standard Windows Libraries<br />    Remove all DEBUG options<br />    Runtime Library to /MD<br />3. DONE

2011-04-18 19:35:00 602

原创 字节对齐的探讨

以前和很多网友发表过有关此类问题的文章,我也是通过这些文章和一些书籍了解了这个知识。这里自我总结一下,希望对给为有所帮助。struct MyStruct {   char dda;//偏移量为0,满足对齐方式,dda占用1个字节;   double dda1;//下一个可用的地址的偏移量为1,不是sizeof(double)=8的倍数,需要补足7个字节才能//使偏移量变为8(满

2006-03-21 16:22:00 1605

原创 C/C++中数组和指针的区别

首先定义一个数组和一个指针:char *aa = "abcde";char bb[6] = "abcde";// 注意:char bb[5] = "abcde";是错误的!!他们之间有什么共同点和区别呢?1、共同点访问数据的时候,可以这样访问:char cTmp = aa[0];char cTmp2 = bb[0];此时,cTmp = cTmp2.还可以这样: 

2006-03-21 16:05:00 1227 1

原创 Oracle数据库结构之物理存储结构

1、物理存储结构1.1数据文件数据文件用于存放所有的数据库数据。将数据放在多个数据文件中,再将数据文件分放在不同的硬盘中,可以提高存取速度。1.2记录文件记录文件也称为重做日志(事务)文件。重做日志在日志文件中以循环的方式工作。有归档日志模式和非归档日志模式。1.3参数文件每一个Oracle数据库和实例都有它自己唯一的init.ora文件。Init.ora文件中的值决定着数据库和实例的特性。1.4

2005-03-11 11:13:00 2740

原创 Oracle数据库结构之存储结构

Oracle数据库结构1、存储结构Oracle的存储结构分为物理存储和逻辑存储。1.1物理存储由数据文件、记录文件、参数文件、控制文件组成。1.2逻辑存储由表空间、表、数据段、区和数据块组成。1.3增加数据库大小的三种方式a、新增数据文件:alter tablespace system add datafile data2.orab、新增表空间:create tablespace users

2005-03-09 11:06:00 1570

原创 Oracle:由临时表空间迅速增长所想到的...

1、临时表空间的作用:临时表空间主要用途是在数据库进行排序运算、管理索引、访问视图等操作时提供临时的运算空间,当运算完成之后系统会自动清理。当临时表空间不足时,表现为运算速度异常的慢,并且临时表空间迅速增长到最大空间(扩展的极限),并且一般不会自动清理了。2、迅速增长的原因:一般原因是sql算法不正确,可能导致出现了迪卡尔积。另外一个原因是视图的创建问题(本人遇到的正是该问题!)。Oracle数据

2005-03-03 11:58:00 2411

原创 数据库相关之SQL Server(一)

1.1、高级查询语句1、  TRUNCATE TABLE [table_name]删除表中的所有行,而不记录单个行删除操作。TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行。但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系统和事务日志资源少。DELETE 语句每次删除一行,并在事务日志中为所删除的

2004-11-09 08:31:00 829

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除