這是我的問題,它很長,但其實很簡單,如果您願意,請至少瀏覽一下。如何避免在使用javascript拖拽drop時抓取圖像?
我把一個名爲「應用程序」的div並在頁面上拖動。工作正常。除了偶爾當我抓住div和拖動而不是拖動div時,只有div的圖像拖動(在Firefox中爲& webkit瀏覽器,而不是),並且鼠標光標會變成一個帶有直線的圓。這極大地損害了網頁的交互性,我不認爲它是一個瀏覽器問題的編碼問題。
我將顯示用於拖動的代碼,但首先您應該知道,爲了拖動我使用三組變量,X1 & Y1是pageX和pageY(clientX或clientY,取決於瀏覽器)和或者每次鼠標移動時記錄。
X2 & Y2是在div上按下鼠標時設置的,並且是鼠標位置和當前頂部之間的區別& div的左邊位置,它們用於當div被拖動時鼠標位置不等於左上角。
最後,dX和dY(三角洲X和三角洲Y的縮寫)是相等的X1-X2和Y1-Y2,它們也在鼠標移動時設置,等於X中的變化和Y中的變化。
不好意思的解釋,但我想它可能有助於清除任何與下面的代碼混淆,這裏是拖動代碼。
app.onmousedown = function() {
X2 = app.offsetWidth - ((app.offsetWidth + app.offsetLeft) - X1);
Y2 = app.offsetHeight - ((app.offsetHeight + app.offsetTop) - Y1);
main.onmousemove = function() {
dX = X1 - X2;
dY = Y1 - Y2;
app.style.top = dY + 'px';
app.style.left = dX + 'px';
}
}
注意的主要DIV僅僅是抱着頁面的所有元素的容器,並用於方便,因爲它等於網頁的大小。
這就是我的問題,正如我之前所說的那樣,它只會在其他時候出現,而且沒有任何錯誤。然而,它經常發生足以成爲一個問題。我知道有可能得到這個工作,因爲我已經看到了不會因此問題而遭受拖放的演示。所以,如果有人知道或有任何想法,將非常感激,如果不是謝謝煩擾閱讀這個我知道這是很長的遺憾。
ps:請不要建議JavaScript框架,而不是我的粉絲。這是我的喜好,我不恨他們,我只是喜歡JavaScript。
不幸的是,這太瀏覽器的具體情況,但無論如何感謝 – Reis
不是所有主流瀏覽器的標準行爲 –