一个node-webkit项目,顶部标题栏css样式设置为 -webkit-app-region:drag,就触发不了鼠标相关事件
1 回答
吃鸡游戏
TA贡献1829条经验 获得超7个赞
我也遇到这个问题了,我是想做一个像迅雷下载速度一样的悬浮框,能拖,能点击,能右键
试了很多种方案都不完美..
最终找到一个方案..虽然比较麻烦,但是实现很完美
那就是不用 -webkit-app-region:drag
自己捕获鼠标事件,然后移动窗口
实现拖拽代码如下
var win = nw.Window.get() let biasX=0
let biasY=0
document.addEventListener('mousedown',function(e){
biasX=e.x
biasY=e.y document.addEventListener('mousemove',moveEvent)
}) document.addEventListener('mouseup',function(){
biasX=0
biasY=0
document.removeEventListener('mousemove',moveEvent)
}) function moveEvent(e){
win.moveTo(e.screenX-biasX,e.screenY-biasY)
}click事件需要自己实现..不然拖动也会触发click
mousedown之后mouseup 判断鼠标移动距离.
小于多少就当click事件处理..大于多少距离就当移动..不触发click
添加回答
举报
0/150
提交
取消
