话不多说,直接上码:

index.html

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<link rel="stylesheet" href="css/style.css" />
<link rel="stylesheet" href="js/themes/default/default.css" />
<link rel="stylesheet" href="css/bootstrap.min.css" />
</head>
<body>
<div class="main">
<iframe src="https://www.baidu.com" class="frame" border="0"></iframe>
<div class="bottom">
&nbsp;&nbsp;
<img alt="新增邮件" src="img/edit.png" width="20" height="20" onclick="edit()" />
&nbsp;&nbsp;
<img alt="退出" src="img/exit.png" width="20" height="20" onclick="exit()" />
</div>
</div>
<div class="modal fade bs-example-modal-lg" id="myModal" tabindex="-1" role="dialog">
<div class="modal-dialog modal-lg" role="document">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title">编辑邮件</h4>
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
</div>
<div class="modal-body">
<form>
<textarea name="content" style="width:760px;height:400px;visibility:hidden;"></textarea>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary">保存</button>
</div>
</div>
</div>
</div>
</body>
</html>
<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/kindeditor-all-min.js"></script>
<script type="text/javascript" src="js/lang/zh-CN.js"></script>
<script type="text/javascript" src="js/bootstrap.min.js"></script>
<script type="text/javascript" src="js/init.js"></script>
<script type="text/javascript">
var editor;
KindEditor.ready(function(K) {
editor = K.create('textarea[name="content"]', {
allowFileManager: true
});
}); function edit() {
$('#myModal').modal('show');
}
</script>

package.json

{
"name": "mail",
"main": "index.html",
"nodejs": true,
"window": {
"title": "万华邮件管理",
"toolbar": true,
"width": 800,
"height": 600,
"resizable": true,
"show_in_taskbar": true,
"frame": true,
"kiosk": false,
"icon": "./img/email.png"
}, "webkit": {
"plugin": true
}
}

init.js

// Load native UI library
var isShowWindow = true;
// Load native UI library
var gui = require('nw.gui');
var win = gui.Window.get();
win.maximize();
var tray = new gui.Tray({
title: '邮件工具',
icon: './img/email.png'
});
tray.tooltip = '邮件工具';
//添加一个菜单
// var menu = new gui.Menu();
// menu.append(new gui.MenuItem({
// type: 'normal',
// label: '退出',
// click: function() {
// if (confirm("确定退出Feynman工具吗?")) {
// win.close(true);
// }
// }
// }));
// tray.menu = menu;
//click 托盘图标事件
tray.on('click',
function() {
if (isShowWindow) {
win.hide();
isShowWindow = false;
} else {
win.show();
isShowWindow = true;
win.maximize();
}
}
);
win.on('close', function() {
win.hide();
}); function exit(){
if (confirm("确定退出邮件工具吗?")) {
win.close(true);
}
}

我的node-webkit笔记的更多相关文章

  1. node 学习笔记

    以下笔记默认安装完成node 及npm 1.安装express 新版本的express-generator已经独立出来,全局安装这个包就ok. npm install express-generato ...

  2. node学习笔记-搭建node环境

    最近项目要用到node,利用空闲整理做下笔记 第一步  安装node,方式比较多,最为直接的是直接去官网     可直接从官网下载安装http://nodejs.cn/download/ 根据自己情况 ...

  3. Node.js笔记1

    Node.js入门笔记 1. node -help 可以显示帮助信息2. node REPL 模式(Read-eval-print loop) 输入—求值—输出循环 直接在cmd输入node 可以进入 ...

  4. node学习笔记(二)(ajax方式向node后台提交数据)

    通过ajax向node后台提交数据过程(附手写前后台代码),并总结post与get的区别 POST 前台代码 //CSS简单给点样式 <style> form{ width: 200px; ...

  5. Node学习笔记(二)

    1.package.json详解Node.js 在调用某个包时,会首先检查包中 package.json 文件的 main 字段,将其作为包的接口模块,如果 package.json 或 main 字 ...

  6. node.js 笔记

    教程总结笔记: 学习网站:http://www.runoob.com/nodejs/nodejs-install-setup.html Node.js 中文网及安装文件下载: http://nodej ...

  7. Nodejs全站开发学习系列 & 深入浅出Node学习笔记 & Spider抓取

    https://course.tianmaying.com/node 这个系列的文章看起来很不错,值得学习一下. /Users/baidu/Documents/Data/Interview/Web-S ...

  8. node学习笔记(连载)

    这段时间玩了小程序.浏览器插件.koa建站,本来想写几篇文章总结一下的.迫于工作上有新需求要跟进,所以先写写读书笔记吧.公司九点上班,不过弹性工作时间,大家基本上九点半之前到.而我作为渣渣,八点半就到 ...

  9. Node.js 笔记02

    一.关于命令 常用命令: dir 列出当前目录下面所有的文件 cd 目录名 进入到指定的目录,. 当前目录, .. 进入上级目录,cd . 当前目录, cd .. 上级目录 md 目录名 创建文件夹 ...

  10. node.js 笔记(一)

    参考:https://github.com/alsotang/node-lessons 感谢!!! 本文属于小白入门级笔记,请大牛自动屏蔽!!! 1.     开发环境 os: 10.12.6 nod ...

随机推荐

  1. 解决kettle在两个mysql之间迁移数据时乱码的问题 和 相关报错 及参数调整, 速度优化

    1. 乱码问题 编辑目标数据库的链接: 配置编码参数即可. 2. 报错 No operations allowed after statement closed. 需要调整wait_timeout:  ...

  2. 宝塔面板1G内存安装mysql5.7提示“至少需要XX兆内存”的解决办法

    打开文件:/www/server/panel/class/panelPlugin.py 搜索关键词:“至少” (可能在134行) 然后把这行if语句注释掉,如下图:

  3. 【异常】Caused by: java.sql.SQLTransientConnectionException: HikariPool-1 - Connection is not available, request timed out after 30005ms.

    一.异常出现的场景 一次线上订单历史数据字段刷新操作,3张表100多万数据.由于同步更新太慢大概20分钟以上,所以采用异不的方式.代码如下: private void batchUpdate(List ...

  4. Ettercap 详细参数

    Ettercap最初设计为交换网上的sniffer,但是随着发展,它获得了越来越多的功能,成为一款有效的.灵活的中介攻击工具.它支持主动及被动的协议解析并包含了许多网络和主机特性(如OS指纹等)分析. ...

  5. mysql显示一张表的索引

    show index from tm_show.fulfillment_order;show index from tm_show.express_verify;show index from tra ...

  6. 算法 dfs —— 将二叉树 先序遍历 转为 链表

    将二叉树拆成链表 中文English 将一棵二叉树按照前序遍历拆解成为一个 假链表.所谓的假链表是说,用二叉树的 right 指针,来表示链表中的 next 指针. Example 样例 1: 输入: ...

  7. python基础语法8 叠加装饰器,有参装饰器,wraps补充,迭代器

    叠加装饰器: 叠加装饰器 - 每一个新的功能都应该写一个新的装饰器 - 否则会导致,代码冗余,结构不清晰,可扩展性差 在同一个被装饰对象中,添加多个装饰器,并执行. @装饰1 @装饰2 @装饰3 de ...

  8. vuex2 mapActions 报错 `unknown action type: xxxx`

    export const setBreadCrumb = ({ dispatch }, data) => { dispatch('SET_BREADCRUMB', data) } 当调用的时候报 ...

  9. ent 基本使用 三 边(关系处理)

    ent 提供了图查询的能力,实际上在关系数据库中的表现就是relation,以下代码接前文 添加边(关系) 添加schema entc init Car Group 效果: 添加字段 car pack ...

  10. 4-网页,网站,微信公众号基础入门(配置网站--下载安装PHP)

    https://www.cnblogs.com/yangfengwu/p/10979101.html 这一节咱看一下如何在原先的基础上实现网站 首先去下载 PHP https://windows.ph ...