我想創建一個多選框(在空白處點擊並拖動,然後會有一個藍色的div),但點擊和拖動不一致,我不能找出問題所在。Mousedown pageX,pageY在鼠標移動pageX pageY後不一樣
試圖從一個空的空間是圍繞右下,右上或左下拖動,你可以看到淡藍色的盒子didnt實際上從點開始在鼠標按下
http://jsfiddle.net/wizztjh/jk4Uc/7/
我想創建一個多選框(在空白處點擊並拖動,然後會有一個藍色的div),但點擊和拖動不一致,我不能找出問題所在。Mousedown pageX,pageY在鼠標移動pageX pageY後不一樣
試圖從一個空的空間是圍繞右下,右上或左下拖動,你可以看到淡藍色的盒子didnt實際上從點開始在鼠標按下
http://jsfiddle.net/wizztjh/jk4Uc/7/
在你的代碼中,我改變了
$(this).unbind().bind("mousemove" ,function(e){
到
$(this).bind("mousemove" ,function(e){
新的代碼可以看出@http://jsfiddle.net/jk4Uc/6/
編輯
試試這個http://jsfiddle.net/jk4Uc/10/在此您拖動正是開始從鼠標按下。我將e.pageX
更改爲e.clientX
。
編輯
這是因爲你問@http://jsfiddle.net/jk4Uc/11/
改變
var oriX = e.clientX, //<== Here
oriY= e.clientY; //<== Here
$("<div id='multiselectbox'></div>")
.appendTo("#canvas")
.css({
top:oriY, //<== Here
left:oriX //<== Here
});
希望工作恰恰這是你在找什麼。
沒關係http://jsfiddle.net/jk4Uc/6/ – 2012-02-01 09:20:51
究竟是什麼問題?說它「不一致」不是很具描述性或非常有幫助。你在經歷什麼(什麼時候),這不是你所期望或想要的? – 2012-02-01 09:38:33
它對我來說看起來相當令人印象深刻。 – 2012-02-01 09:41:48