javascript - 纯js如何给内联样式添加像素

标签 javascript html css

如果我点击“vs-nav-right”或“vs-nav-left”,我喜欢在“vs-wrapper”的背景位置添加/子像素。

我喜欢用纯 JavaScript 来做这件事,所以不用 JQuery。

代码示例:

 <div class="vs-wrapper" style="background-position: 0% 0%;"></div>

 <ul>
     <li class="vs-nav-right"></li>
     <li class="vs-nav-left"></li>
 </ul>

如果点击“vs-nav-right”,我喜欢给后面元素的背景位置加50px

<div class="vs-wrapper" style="background-position: 50px 0;"></div>

再次点击“vs-nav-right”,我喜欢多加50px

<div class="vs-wrapper" style="background-position: 100px 0;"></div>

与“vs-nav-left”相同,但我喜欢减去 50px 而不是添加 50px

<div class="vs-wrapper" style="background-position: -50px 0;"></div>

最佳答案

你可以简单地这样做:-

$(document).on('click','.vs-nav-right',function(){
  var m = document.getElementsByClassName("vs-wrapper");
  var c = m[0].style;

  if(c.backgroundPositionX == "0%")
    c.backgroundPositionX = "0px";

  c.backgroundPositionX = parseInt(c.backgroundPositionX) + 50 + 'px';

});

$(document).on('click','.vs-nav-left',function(){
  var m = document.getElementsByClassName("vs-wrapper");
  var c = m[0].style;

  if(c.backgroundPositionX == "0%")
    c.backgroundPositionX = "0px";

  c.backgroundPositionX = parseInt(c.backgroundPositionX) - 50 + 'px';

});

关于javascript - 纯js如何给内联样式添加像素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30681620/

相关文章:

javascript - 打开时禁用 struts jquery 对话框按钮

javascript - 如何避免很长的路径并在 Create React App 项目中使用绝对路径?

javascript - 如何将 JSON.NET 日期时间格式转换为 JavaScript 日期和时间

javascript - 无法专注于 Bootstrap Carousel 中的输入字段

javascript - 如何显示从 MySQL 数据库中获取的随机文本和图像?

jquery - jQuery .submit() 问题

javascript - 对象拟合和图像映射 css

html - 为什么为表格列设置 flex 显示会破坏表格结构?

javascript - css 可见性属性和 javascript setTimeout 方法出错

css - div 前面的按钮