首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >大于选择器不起作用

大于选择器不起作用
EN

Stack Overflow用户
提问于 2012-09-21 04:41:58
回答 3查看 467关注 0票数 1

我有一个支持滑动手势的画廊。通过向左/向右滑动,用户可以浏览图库。我需要限制滑动div的位置,这样它就不会偏离轨道,也就是说,一旦你到达页面,显然所有的图像都在右边,所以我不想让用户向左滑动(到空白区域)。

我试着使用“大于”,但它不起作用。

代码语言:javascript
运行
复制
var theWidth = $(window).width();

function processingRoutine() {
    var swipedElement = document.getElementById(triggerElementID);

    if ( swipeDirection == 'left' ) {
        $(".frame").animate({marginLeft: '-='+theWidth});
    } else if ( swipeDirection == 'right' ) {
        $(".frame").animate({marginLeft: '+='+theWidth});

        if ( parseInt($(".frame").css("margin-left")) > 1 ) {
            $(".frame").animate({marginLeft: "0px"});
        }
    }
}

你可以在这里查看整个源代码:http://joinersart.co.uk/mtest

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-09-21 19:03:39

我犯了一个简单的错误:

我搞不懂在哪里边距左应该注册“不去”区域。我最初认为,如果左边距大于1px,就足够了。事实上,它实际上需要减去我移动的量。

因此,不是:

代码语言:javascript
运行
复制
  if ( parseInt($(".frame").css("margin-left")) > 1 ){...

它应该是:

代码语言:javascript
运行
复制
   if ( parseInt($(".frame").css("margin-left")) > -theWidth ){...
票数 0
EN

Stack Overflow用户

发布于 2012-09-21 05:08:11

更改:

代码语言:javascript
运行
复制
$(".frame").animate({margin-left: "0px"});

至:

代码语言:javascript
运行
复制
$(".frame").animate({marginLeft: "0px"});
票数 1
EN

Stack Overflow用户

发布于 2012-09-21 04:59:14

我相信你的问题出在parseInt()身上。因为parseInt() -left的值可以是'0px‘,所以我相信它会使用一个8的基数。(已弃用),如果使用parseInt(frame.css("margin-left"), 10),则应使用基数10 (十进制)将字符串解析为正确的整数值。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12520613

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档