node-webkit 拖动效果和问题

package.json:

{    
    "main": "index.html",
    "name": "example",    
    "window":
    {        
         "toolbar": false,        
         "frame"  : false
    }
}

index.html:

<!doctype html><html lang=‘en‘><head>
    <meta charset=‘UTF-8‘>
    <title>NodeWebkit Window Controls Example</title>
    <link rel=‘stylesheet‘ href=‘reset.css‘>
    <link rel=‘stylesheet‘ href=‘style.css‘>

    <script>

        var nw = require(‘nw.gui‘);        var win = nw.Window.get();
        win.isMaximized = false;    </script>

    </head><body>

    <header>
        <ul>
            <li><a href=‘#‘ title=‘Minimize‘ id=‘windowControlMinimize‘></a></li><!--
         --><li><a href=‘#‘ title=‘Maximize‘ id=‘windowControlMaximize‘></a></li><!--
         --><li><a href=‘#‘ title=‘Close‘    id=‘windowControlClose‘   ></a></li>
            </ul>
        </header>

    <script>

        // Min
        document.getElementById(‘windowControlMinimize‘).onclick = function()
        {
            win.minimize();
        };        // Close
        document.getElementById(‘windowControlClose‘).onclick = function()
        {
            win.close();
        };        // Max
        document.getElementById(‘windowControlMaximize‘).onclick = function()
        {
            if (win.isMaximized)
                win.unmaximize();            else
                win.maximize();
        };

        win.on(‘maximize‘, function(){
            win.isMaximized = true;
        });

        win.on(‘unmaximize‘, function(){
            win.isMaximized = false;
        });    </script>

    </body></html>

reset.css:

/**
 * CSS Reset via http://meyerweb.com/eric/tools/css/reset/
 */html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code,del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset,form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer,header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video{    margin: 0;padding: 0;border: 0;font-size: 100%; font: inherit;vertical-align: baseline;    }article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section{    display: block;    }body{    line-height: 1;    }ol, ul{    list-style: none;    }blockquote, q {    quotes: none;    }blockquote:before, blockquote:after, q:before, q:after{    content: ‘‘;    content: none;    }table{    border-collapse: collapse;    border-spacing:  0;    }a{    text-decoration: none;    }

style.css:

@charset "UTF-8";/*Title Bar*/header{    width:         100%;    height:         34px;    background:    -webkit-linear-gradient(top, rgb(255,255,255) 0, rgb(225,225,225) 100%);    border-bottom: 1px solid rgb(205,205,205);    -webkit-app-region: drag;    -webkit-user-select: none;    }/*Window Controls*/header>ul{    float:        right;    text-align:   right;    line-height:  0;    padding-left: 6px;    }header>ul>li,header>ul>li>a{    display: inline-block;    }header>ul{    float: right;    }header>ul>li>a{    width:              22px;    height:             22px;    margin:              6px 6px 6px 0;    background-image:   url(‘./icons.svg‘);    background-repeat:  no-repeat;    -webkit-transition: -webkit-transform 200ms;    -webkit-app-region: no-drag;    }header>ul>li>a:hover,header>ul>li>a:focus{    -webkit-transform:  scale(1.22,1.22);    outline:            none;    }a#windowControlClose{    background-position: -44px 0;    }a#windowControlMaximize{    background-position: -22px 0;    }a#windowControlMinimize{    background-position: 0 0;    }

以上就是简单拖动的例子,文件创建好后,把所有文件拷贝到nwjs 解压目录下,运行nw.exe就可以了

这个例子转自

http://nodehead.com/node-webkit-custom-window-controls-26/

问题:

我们开发时使用的是 node-webkit v0.12.2: (May 22, 2015, based off of IO.js v1.2.0, Chromium 41.0.2272.76) 版本

package.json

{
  "main": "index.html",
  "name": "example",
  "window":
  {
    "toolbar": false,
    "frame"  : false,
    "resizable":false // 不能生效
  }
}

使用 node-webkit v0.13.0-alpha2: (Jun 23, 2015, based off of IO.js v1.5.1, Chromium 43.0.2357.45)

 "resizable":false //生效了
时间: 2024-10-08 12:27:08

node-webkit 拖动效果和问题的相关文章

js 实现win7任务栏拖动效果

前言 在某个时刻, 我认识了一个朋友. 此人在我的教唆下, 踏上了js的不归路. 前天他问我, Win7任务栏拖动效果怎么实现. 我随口就跟他说, 这简单的一逼. 在我一晚上的折腾之后, 一份潦草的代码总算实现了功能. PS: 我是搞C++的, js略懂一二.. 源码 话不多说, 上源码. 1 // 常量 2 var CELL_WIDTH = 100; 3 var CELL_HEIGHT = 50; 4 5 var Utils = { 6 pixelToInt: function(str) 7

使用jquery实现简单的拖动效果,分享源码

因为想实现相框的拖到,找了半天的原因愣是没有找到错误,所以,只能翻看源码了 如何实现拖动效果? 浏览DEMO 首先分析下拖动效果原理: 1.当鼠标在被拖动对象上按下鼠标(触发onmousedown事件,且鼠标在对象上方) 2.开始移动鼠标(触发onmousemove事件) 3.移动时更显对象的top和left值 4.鼠标放开停止拖动(触发onmouseup事件) 注意:拖动的对象必须是定位对象(即设置了position:absolute或 relative). 也就是说拖动事件=onmoused

简单的鼠标拖动效果

使用js实现简单的鼠标拖动效果,但此部分代码有个小小的BUG,后期改进好我会写进来,但基本的效果已经实现,请大家参考. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>鼠标移动</title> <style> #box{ width: 50px; height: 50px; position:

js实现的div拖动效果实例代码

js实现的div拖动效果实例代码:div的拖动效果在很多效果中都有应用,当然还有很多附加的功能,本章节只是给拖动效果,并介绍一下它的实现过程.代码实例如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <t

Web的鼠标拖动效果

以前写过一个拖动效果的Demo,拖拽元素新位置的计算是放在拖拽元素的mousemove事件中进行的.计算效率差,而且效果不好.所以一直有想怎样才能做出jquery-ui那种顺滑的拖拽效果. 其实顺滑的拖拽效果的突破口有两点: 事件捕捉要去捕捉document的鼠标位置. 使用setInterval功能计算拖拽元素的新位置. 使用jQuery,经过一些简单的重构和调试,将代码完善如下: drag.html <!DOCTYPE html> <html> <head> <

运用HTML5原生拖动事件(drag)实现拖动效果

拖动效果相信很多朋友都自己写过,不管你用原生JS还是Jquery要实现起来也很简单,但是今天我想介绍的是运用HTML5标准中定义的原生拖动事件实现拖动效果. 一.背景: 其实说是HTML5标准定义,其实最早在IE4中就有拖放功能的API,只是在IE4中,网页中只有两种对象可以拖放:图像和某些文本.并且在IE4中唯一有效的放置目标是文本框.到了IE5.5,拖放功能得到了扩展,让网页中的任何元素都可以拖放.最终HTML5以IE的实力为基础制定了拖放规范.FF3.5+,Safari3+和Chrome根

Android 仿 窗帘效果 和 登录界面拖动效果 (Scroller类的应用) 附 2个DEMO及源代码

在android学习中,动作交互是软件中重要的一部分.当中的Scroller就是提供了拖动效果的类,在网上.比方说一些Launcher实现滑屏都能够通过这个类去实现.以下要说的就是上次Scroller类学习的后的实践了. 假设你还不了解Scroller类,那请先点击:Android 界面滑动实现---Scroller类 从源代码和开发文档中学习(让你的布局动起来) 了解之后再阅读下面内容.你会发现原来实现起来非常easy. 之前说到过.在广泛使用的側边滑动导航开源库 --SlidingLayer

安卓触摸事件的分发,处理和消费,以及实现图片的拖动效果

Touch事件分发中只有两个主角:ViewGroup和View.Activity的Touch事件事实上是调用它内部的ViewGroup的Touch事件,可以直接当成ViewGroup处理. View在ViewGroup内,ViewGroup也可以在其他ViewGroup内,这时候把内部的ViewGroup当成View来分析. ViewGroup的相关事件有三个:onInterceptTouchEvent.dispatchTouchEvent.onTouchEvent.View的相关事件只有两个:

vc++ mfc中拖动效果的实现 借助于CImageList

拖动是界面编程频繁使用的一个效果,在windows系统下可谓大行其道.纵观时下的应用软件几乎各个都支持各种各样拖动的效果,windows7更是把拖动做到了极致.其实说起来拖动的实现也很简单,对于有句柄的对象都可以通过MoveWindow或SetWindowPos实现位置变动,而没有句柄的对象实现拖动无非就是做些参数修改,说到底实现拖动就是在OnLButtonDown.OnMouseMove和OnLButtonUp中处理数据,当然你可以使用鼠标右键甚至中建消息来实现,基本原理是一样的.     

Android 仿 窗帘效果 和 登录界面拖动效果 (Scroller类的应用) 附 2个DEMO及源码

在android学习中,动作交互是软件中重要的一部分,其中的Scroller就是提供了拖动效果的类,在网上,比如说一些Launcher实现滑屏都可以通过这个类去实现.下面要说的就是上次Scroller类学习的后的实践了. 如果你还不了解Scroller类,那请先点击:Android 界面滑动实现---Scroller类 从源码和开发文档中学习(让你的布局动起来) 了解之后再阅读以下内容,你会发现原来实现起来很简单. 之前说到过,在广泛使用的侧边滑动导航开源库 --SlidingLayer其实就是