2016-09-14 12 views
0

Мне нужно отслеживать координаты из событий dragmove, но по некоторым причинам это не работает должным образом в Firefox. То есть evt.pageX и evt.pageY всегда равны нулю.события dragmove, действующие с Firefox & React

render(){ 
    return (<div draggable={true} onDragMove={this.handleDragMove} onDragStart={this.handleDragStart} /> 
} 
handleDragStart(evt){ 
    console.log(evt);//this works 
    evt.dataTransfer.setDragImage(new Image(),-999999999999,-999999999999); 
    evt.dataTransfer.setData('text/plain', 'oh ffs firefox'); //dragmove events wont get triggered at all without this 
} 
handleDragMove(evt){ 
    console.log(evt);//these get triggered 
    console.log(evt.pageX+" "+evt.pageY);//always zero 
} 

Я использую Firefox 47 на Ubuntu 16.04 (но, очевидно, это нужно для работы на ~ все версии Firefox);

+1

Что вы подразумеваете под 'не работает должным образом'? Каковы ошибки, симптомы? Пожалуйста, будьте более конкретными. – Tim

+0

console.log (evt.pageX + "" + evt.pageY); // всегда ноль – Seppo420

ответ

0

В моем случае компонент, который нужно перетащить, очень большой, поэтому мне удалось обойти это, установив onDragOver={this.handleDragMove}, и события ondragover, похоже, обеспечивают координаты.