繁体   English   中英

jQuery onclick添加左边距

[英]jquery onclick add margin-left

我正在JS中尝试一些非常简单的方法,但无法使其正常工作...

我想在单击div时向另一个div添加负的左边距,但是我希望每次单击div时都会发生这种情况,而不仅仅是现在这样。 Eveytime我单击我的#next_nav,我希望#nav从10px负值移动。 在这里它只能工作一次。 这是我的js:

$(function() {
  $('#next_nav').click(function () {
     $( "#nav" ).css('margin-left','-10px');
  });
});

和我的HTML:

<div id="next_nav"></div>
<div id="nav"></div>

这是我的JSfiddle: http : //jsfiddle.net/Beyzd/

有人可以帮我吗? 非常感谢,

在您的值前面添加一个=

$(function() {
    $('#next_nav').click(function() {
       $('#nav').css('margin-left', '-=10px');
    });
});

工作小提琴

编辑

如果要设置动画,请使用animate()方法。 这是给你的小提琴

你可以试试这个

var pixels=0;
$(function() {
    $('#next_nav').click(function () {
       pixels=pixels-10;      
       $( "#nav" ).css('margin-left',pixels);
    });
});

工作小提琴在这里可用。

检查jsFiddle

   $(document).ready(function (){
       $("#next_nav").on("click", function() {
          var $left = $("#nav").css('margin-left');
          var $newval = (parseInt($left) - 10) + "px";
          $("#nav").css ({
            'margin-left' : $newval
          });
       });
   });
$(function() {
  var count=0;
  $('#next_nav').click(function () {
  count-=10;

$( "#nav" ).css('margin-left',count);
});
});

并包括jQuery

已为您修复: 更新的版本

编辑.css('margin-left','-10px'); .css({'margin-left' : '-10px'});

尝试这个:

$(function() {
$('#next_nav').click(function () {
  marginleft=parseInt($( "#nav" ).css('margin-left').replace('px',''));
  $( "#nav" ).css('margin-left',marginleft-10+'px');
});
});

工作小提琴

只需更改此$( "#nav" ).css('margin-left','-=10px');

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM