Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/480.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.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中检测元素是否偏离屏幕右边缘60%_Javascript_Jquery - Fatal编程技术网

在javascript中检测元素是否偏离屏幕右边缘60%

在javascript中检测元素是否偏离屏幕右边缘60%,javascript,jquery,Javascript,Jquery,使用Javascript的本机拖动,我如何检测对象是否偏离屏幕/窗口右边缘60%。也就是说40%的信息都显示出来了 我所说的60%,是指窗口当前宽度的60%。因此,当窗口当前宽度的60%被隐藏,而窗口宽度的40%或更少被显示时 我需要将此作为一个if条件,谁的套件可以是jQuery代码 我尝试的是使用Pep.js插件,如果在拖动选项中,则使用第一个else。这里有更详细的代码:好的,它来了 剧本: window.onload = function () { var AniMove = f

使用Javascript的本机拖动,我如何检测对象是否偏离屏幕/窗口右边缘60%。也就是说40%的信息都显示出来了

我所说的60%,是指窗口当前宽度的60%。因此,当窗口当前宽度的60%被隐藏,而窗口宽度的40%或更少被显示时

我需要将此作为一个if条件,谁的套件可以是jQuery代码

我尝试的是使用Pep.js插件,如果在拖动选项中,则使用第一个else。这里有更详细的代码:

好的,它来了

剧本:

window.onload = function () {
    var AniMove = function (doc, element) {
        var ox, oy, mx, my,
            w = element.offsetWidth,
            mouseMove = function (e) {
                e.preventDefault();
                if (element.offsetLeft + 0.4 * w > window.innerWidth) {
                    // 60% of the element's width is outside of the window now... do something
                    return;
                }               
                element.style.left = element.offsetLeft + e.clientX - mx + 'px';
                element.style.top = element.offsetTop + e.clientY - my + 'px';
                mx = e.clientX;
                my = e.clientY;
                return false;
            },
            mouseUp = function () {
                doc.removeEventListener('mousemove', mouseMove);
                doc.removeEventListener('mouseup', mouseUp);
                return;
            },
            mouseDown = function (e) {
                ox = mx = e.clientX;
                oy = my = e.clientY;
                doc.addEventListener('mousemove', mouseMove, false);
                doc.addEventListener('mouseup', mouseUp, false);
                return;
            };
        element.addEventListener('mousedown', mouseDown, false);
    },
    drag = new AniMove(document, document.getElementById('square'));    
}
以及HTML:

<div id="square"></div>

做完这一切之后,我们有了一个新的开始。我希望这段代码包含您需要的所有信息。

再加上一点数学知识应该很容易。问题出在哪里,你有一些代码可以共享吗?如果拖动本身是一个问题,我从我的“档案”中找到了。这并不完全是你需要的,但你可以去掉你不需要的部分,然后添加你自己的…。@RokoC.Buljan我试着在更新这个问题的问题链接中这样做。@djangjohnson你很好。我已经为我的同事创建了这个代码段,只需检查一下问题,这里有一个注释过的伪代码,它可能会帮助您开发代码。@Teemu它有助于拖动。但是如何检测元素何时离开屏幕/窗口的右边缘。这就是我需要帮助的地方。
DIV {
    position: fixed;
    width: 100px;
    height: 100px;
    background: #f00;
}