移动DIV禁用按钮0px左边距

时间:2016-04-20 09:18:04

标签: javascript jquery html css

我有点问题。我试图使用jQuery和一些css / javascript创建我自己的滑块。

我让我的滑块通过点击按钮向左右移动Div 660px。

但是,我希望在左边距为0时禁用右键。我希望整个div在点击一下后回到0px。

这可能吗?

这是我的代码:

<script language="javascript">
            function example_animate(px) {
                        $('#slide').animate({
                            'marginLeft' : px
                });
            }
        </script>
        <div class="container">
            <div class="row">
                <div class="contr-left">
                    <a type="button" value="Move Left" onclick="example_animate('-=600px')"><i class="fa fa-chevron-circle-left fa-2x" aria-hidden="true" ></i></a>
                </div>
                <div id="carreview" class="carousel" data-ride="carousel" style="opacity: 1; display: block;">
                    <div class="wrapper-outer">
                        <div class="wrapper-inner" id="slide">
                            <?php get_template_part('loop-reviews');?>
                        </div>
                    </div>
                    <div class="contr-right">
                        <a type="button" value="Move Right" onclick="example_animate('+=600px')"><i class="fa fa-chevron-circle-right fa-2x" aria-hidden="true" ></i></a>
                    </div>
                </div>
            </div> 
        </div>

我正在使用的代码来自此页面:Page

好吧,使用Rayn的代码,我得到了隐藏的按钮,但现在它不会显示左边距是1px还是什么的。所以我现在正在尝试这个:(不用btw工作)

我现在正在尝试:(不能正常工作)`function example_animate(px){

                $('#slide').animate({
                    'marginLeft' : px
        });
       var slidemarginleft = $('#slide').css('margin-left'); //this gets the value of margin-left
       if(slidemarginleft == '0px'){
          $('.contr-right').hide();
      } else (slidemarginleft == '1px') {
            $('.contr-right').show();
         }
       }`

此外,我发现左边距没有设置在样式表中但是在  <div style="margin-left:0px">content</div>

4 个答案:

答案 0 :(得分:1)

每次单击后都可以执行if语句来检查元素是否为0px

    function example_animate(px) {

                    $('#slide').animate({
                        'marginLeft' : px
            });
           var slidemarginleft = $('#slide').css('margin-left'); //this gets the value of margin-left
           if(slidemarginleft == '0px'){
              $('.contr-right').hide();
             }
           }

答案 1 :(得分:0)

使用此

function example_animate(px) {
                    $('#slide').animate({
                        'marginLeft' : px
            });
            if($('.xman').css("marginLeft")=='0px'){
                $('.contr-left').attr('disabled',true);
           }
        }

答案 2 :(得分:0)

左边距离时禁用按钮:0px

如果满足条件,您可以使用jquery的.prop()方法禁用按钮。这是一个例子(伪代码):

function disableButton() {
 $(element).prop('disabled', true);
}
function checkMargin() {
if ($(element).css("margin") === 0) {
 disableButton()
}
}
checkMargin()

点击一下后回到0px

在这里,我只需设置点击次数,并在达到所需的阈值时触发该功能。伪代码:

var threshold = 5
var clicks = 0

$(element).click(function(){
clicks++
if (clicks === 5) {
rewind();
}
clicks - 5
})


function rewind() {
 $(element).css( "margin", "0" );
checkMargin()
}

答案 3 :(得分:0)

这是我的工作代码,感谢所有帮助:

var user = db.AdminLogin.FirstOrDefault(x => x.ADMIN_ID == id);
user.ADMIN_PASSWORD = 'abc';
db.SaveChanges();