1

margin-left如果对象的 css属性低于 0,我想将其设置为 1000,但它没有按我的意愿工作。

这是我正在使用的代码:

$(".slide").each(function(a, b) {
  m=$(this).css("margin-Left");
  if (m <= "0px") {
    console.log($(this).css("margin-left"));
    $(this).css({"margin-left": width + "px"});
  }
});
4

2 回答 2

2

这里的问题是.css('margin-left')它将返回一个字符串。通过以下方式更改您的代码:

$(".slide").each(function(a,b){
   m = parseInt($(this).css("margin-left"));
   if(m <= 0) {
      console.log($(this).css("margin-left"));
      $(this).css({"margin-left":width+"px"});
   }
});
于 2018-02-11T17:15:34.410 回答
0

您可以使用setInterval()多次更改margin-left:

setInterval(function(){
   $(".slide").each(function(a,b){
      m = parseInt($(this).css("margin-left"));
      if(m <= 0) {
         console.log($(this).css("margin-left"));
         $(this).css({"margin-left": "1000px"});
      }
   });
}, 500);
于 2018-02-11T17:32:45.127 回答