Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Mousedown和mousemove在Meteor中的表现不一致_Javascript_Meteor - Fatal编程技术网

Javascript Mousedown和mousemove在Meteor中的表现不一致

Javascript Mousedown和mousemove在Meteor中的表现不一致,javascript,meteor,Javascript,Meteor,我在Meteor中有一个单页应用程序 我想跟踪bookmarklet(以包含图像的标记的形式)是否被拖向书签栏 我使用mousedown、mousemove和mouseup的组合来尝试跟踪拖动 Template.myTemplate.events = { 'mousedown': function(){ Session.set('dragging', true) console.log('drag starts') }, 'mouseup': f

我在Meteor中有一个单页应用程序

我想跟踪bookmarklet(以包含图像的
标记的形式)是否被拖向书签栏

我使用mousedown、mousemove和mouseup的组合来尝试跟踪拖动

Template.myTemplate.events = {  
  'mousedown': function(){    
    Session.set('dragging', true)   
    console.log('drag starts')
  },  
  'mouseup': function(){  
    if (Session.get('dragging') == true && event.y < 10){   
      // The result i want  
    }  
    Session.set('dragging', false)  
    console.log('drag stops')  
  }  
}
Template.myTemplate.events={
“mousedown”:函数(){
Session.set('drawing',true)
console.log('拖动开始')
},  
“mouseup”:函数(){
如果(Session.get('drawing')==true&&event.y<10){
//我想要的结果
}  
Session.set('拖动',false)
console.log('drag stops')
}  
}
拖动开始得很好,但在鼠标离开
标记后不久,它似乎就停止了,而且
mouseup
没有按应有的方式注册

如果在
mouseup
mousedown
之后我
返回false
,则逻辑将正常工作,即,我可以在mousedown之后将鼠标移动到很远的地方,然后观察
event.y
是否为<10,并且没有baulk-但是代码没有达到用户能够拖动
标记的预期效果

你有什么想法吗

'mousedown': function(){
如果要在模板上执行鼠标下移,它应该位于
a
元素上

因此,请改为:

'mousedown a': function(){
或者在此处选择正确的
元素

如果要在模板上执行鼠标下移,它应该位于
a
元素上

因此,请改为:

'mousedown a': function(){

或者在这里选择正确的
元素。

我已经试过了。不幸的是,运气不好。Mousedown总是有效的。问题出在老鼠身上。它是否开火似乎是非常随机的。在非Meteor设置中,这个:
$(“#draggable”).on('drag',function(event){console.log(window.event.clientY);})
工作正常。在我的实验中,mouseup似乎只有在不拖动鼠标的情况下才工作。值得注意的是,对于任何经过的人来说,这不是流星问题,而是一般javascript问题-如果鼠标离开mousedown事件的元素,mouseup事件不会被触发。。。有一个通用的模板级(甚至是主体级)mouseup事件,我已经尝试过了。不幸的是,运气不好。Mousedown总是有效的。问题出在老鼠身上。它是否开火似乎是非常随机的。在非Meteor设置中,这个:
$(“#draggable”).on('drag',function(event){console.log(window.event.clientY);})
工作正常。在我的实验中,mouseup似乎只有在不拖动鼠标的情况下才工作。值得注意的是,对于任何经过的人来说,这不是流星问题,而是一般javascript问题-如果鼠标离开mousedown事件的元素,mouseup事件不会被触发。。。有一个通用模板级别(甚至主体)mouseup事件请参见