最近因为买了本<深入浅出node.js >,立刻就对node和javascript 有着及其浓厚的兴趣,可惜现在已经将近期末,备考阶段,想挤出时间来学习这个已经是很困难的事情了..另外,昨天看书的时候看到了node-webkit ,一种可以用网页编码方式来实现桌面应用的技术,百度了一下超级高兴,因为之前一直在找这个。终于被我找到了。。linux deepin 的桌面也是用javascript写成的,之前知道这个之后一直想知道这种技术。。
下面是node-webkit 的介绍。node 是现在非常流行的后端的javascript 技术,其实是封装了google 公司chrome 浏览器的javascript 引擎V8..这个引擎使javascript 的运行性能提高不 少,使得chrome 一举获得" 浏览器第二次世界大战"的 冠军。。node 实际上是javascript 的一种运行环境.. 它使javascript 脱离了浏览器,填补了 javascript 在服务器端的空白。。。而webkit 则是 一种开源的网页排版引擎。两者的结合是完成了这个跨时代的作品。用html,,css,javascript 完成跨平台桌面应用。
-----------------------------------------------use node-webkit native UI code------------------
<script>
var gui=require('nw.gui');
var menu=new gui.Menu();
menu.append(new gui.MenuItem({label:'Item a'}));
menu.append(new gui.MenuItem({label:'Item 2'}));
menu.append(new gui.MenuItem({label:'Item 3'}));
menu.append(new gui.MenuItem({label:'Item 4'}));
for(var i=0;i<menu.items.length;++i)
{
console.log(menu.items[i]);
}
menu.append(new gui.MenuItem({label:'click me',
click:function(){
var element=document.createElement('div');
element.appendChild(document.createtextNode('clicked OK'));
document.body.appendChild(element);
}
}));
///popup as context menu
document.body.addEventListener('contextmenu',function(ev){
ev.preventDefault();
menu.popup(ev.x,ev.y);
},false);
</script>
///
发现window 空间一个功能,貌似是可以截屏的。。取得窗口的可见区域
Window.capturePage(callback [,image_format ]);
callback 是一个当图片准备好了才调用的函数
function(dataUrl){...};
没运行成功=。=