jquery - 根据滑块值向表中添加一个类
问题描述
我有一个工作脚本,它根据用户可配置滑块的值向表格单元格添加填充。滑块值从 15 变为 30。
var slider = document.getElementById("myRange");
var output = document.getElementById("padding-slider");
output.innerHTML = slider.value;
slider.oninput = function() {
output.innerHTML = this.value;
var items = document.getElementsByClassName("cell");
for (var i=0; i < items.length; i++) {
items[i].style.padding = this.value + "px 0";
}
}
我还想table
根据滑块值添加类:
18 = .font-med
24 = .font-lrg
30 = .font-x-lrg
解决方案
试试这个代码
var slider = document.getElementById("myRange");
var output = document.getElementById("padding-slider");
var thisTable = document.querySelector('table');
output.innerHTML = slider.value;
slider.oninput = function() {
output.innerHTML = this.value;
var thisVal = parseInt(this.value);
if(thisVal === 18) {
thisTable.setAttribute('class', 'queue font-med');
} else if (thisVal === 24) {
thisTable.setAttribute('class', 'queue font-lrg');
} else if (thisVal === 30) {
thisTable.setAttribute('class', 'queue font-x-lrg');
} else {
thisTable.setAttribute('class', 'queue');
}
var items = document.getElementsByClassName("cell");
for (var i=0; i < items.length; i++) {
items[i].style.padding = thisVal + "px 0";
}
}
推荐阅读
- ruby-on-rails - 如何将变量传递给载波?
- virtualbox - OSX Big Sur 11.4 升级后出现 VirtualBox 错误
- vue-cli-3 - 无法在 VueCLI3 项目中安装 less-loader
- c# - 为什么 ap.Connect(authrequest) 返回空值?
- odoo - 在odoo中限制One2many Lines的条目
- java - 带有响应列表的 REST API 映射
- reactjs - React 多组件绑定
- python - 在 Python 中从文件中分离值
- javascript - 如何检查为 JavaScript 中的内置函数编写的实际代码?例如:toUpperCase() 或 toLowerCase()
- selenium - Selenium 错误:USB:usb_device_handle_win.cc:1058 无法从节点连接读取描述符