检查元素是否在屏幕右边缘

时间:2013-06-13 19:55:54

标签: javascript jquery

如果元素占窗口宽度的60%,屏幕上的值是否合适,我该如何编写if条件?

我已尝试使用style.left > '40%',但这似乎无法奏效。或者是对的。

2 个答案:

答案 0 :(得分:7)

您可以使用javascript和jQuery轻松完成此操作。 要找到对象的右边缘(在此处将f存储在内存中),请使用以下代码:

var rightEdge = f.width() + f.offset().left;

要查找屏幕宽度,您可以使用以下代码:

var screenWidth = $(window).width();

“屏幕外”的对象数量是通过从screenWidth中减去rightEdge来计算的,因此这个布尔表达式描述了对象离屏幕超过60%的时间:

rightEdge-screenWidth > f.width()*.6

这是一个有效的演示: http://jsfiddle.net/YeyFj/

答案 1 :(得分:2)

这不是直接回答你的问题,但我创造了这个小提琴,可以让你更容易玩你需要做的数学。

http://jsfiddle.net/5ucbX/

var w = $('#container').width();
var el = $('#el');
el.draggable({
    stop: function () {
        var ew = el.width();
        //this is your "formula"
        var l = el.offset().left + (ew * .6);
        if (l > w) {
            el.addClass('over')
        }
        else {
            el.removeClass('over')
        }
    }
});