gpt4 book ai didi

javascript - 使用javascript拖放时如何避免抓取图像?

转载 作者:行者123 更新时间:2023-11-28 10:13:29 24 4
gpt4 key购买 nike

这是我的问题,它很长,但实际上很简单,请至少浏览一下。

我将一个名为“app”的 div 拖到页面周围。工作正常。除了偶尔当我捕获div并拖动而不是拖动div时,仅拖动div的图像(在firefox和webkit浏览器中,而不是ie)并且鼠标光标变成带有一条线穿过它的圆圈。这极大地损害了网页的交互性,我认为这与其说是编码问题,不如说是浏览器问题。

我将在下面显示用于拖动的代码,但首先您可能应该知道,为了拖动,我使用三组变量,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。

最佳答案

尝试将属性 ondragstart="return false;" 添加到 img 标记,这应该会禁用浏览器内置的拖放功能。您通常还需要对 a 标签执行此操作

关于javascript - 使用javascript拖放时如何避免抓取图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7074028/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com