即使if语句中发生警报,​​if语句中的jQuery代码仍未运行

时间:2013-06-13 16:47:38

标签: javascript jquery

我有一个if语句,里面有两个警告以及一个变量赋值。当条件满足时,所有这三件事都会发生。

但是当我将jQuery代码添加到if语句的套件中时,jQuery代码就不会发生。

如何在我的条件下 $('#tabViewWindow').animate({left:'100%'});

我试图让上述代码发生的条件是: else if(obj.dx>0 && obj.$el.offset().left>=$(window).width()*0.6){

这是我的所有代码:

$('#tabViewWindow').pep({
    axis: 'x',
    useCSSTranslation: false,
    drag: function (ev, obj) {
        if (obj.dx < 0 && obj.$el.offset().left > $(window).width() * 0.8) {
            //block left-drag when drag is left and object is 80% off screen
            obj.velocityQueue = new Array(5);
            return false;
        } else if (obj.dx > 0 && obj.$el.offset().left >= $(window).width() * 0.6) {
            //drag direction is right and object is 60% off screen
            alert("slide right here");
            open = false;
            alert("open is: " + open);
        } else if (obj.dx > 0) {
            open = true;
        }
        handleOpacity(ev, obj)
    },
});

function handleOpacity(ev, obj) {
    var opacity = 1 - (parseInt(obj.$el.css('left')) / $(window).width());
    obj.$el.css('opacity', opacity);
}

1 个答案:

答案 0 :(得分:0)

尝试将position:absolute;position:relative;(以及至少初始lefttop属性)添加到#tabViewWindow的样式中。 left属性仅适用于具有该属性的元素。或者,如果您想要保留元素静态位置,则可以为margin-left属性设置动画:

$('#tabViewWindow').animate({'margin-left' : '100%'}, 500);
相关问题