javascript - 如何在输入类型范围内创建 float 元素

标签 javascript jquery html css slider

我需要 span#a 转换到 slider 拇指所在的相同位置。我需要以某种方式使用 transform: translateX(and_step_to_translate_here)。所以说简单一点,我需要 span#a 来跟随轨道拇指。我该怎么做?

input {width: 90%;}
<input type="range" min="0" max="100" step="1"/><br/>
<span id="a">I'm following.</span>

最佳答案

我可以建议使用输入范围 oninput事件跟随输入值并使用比例 margin-left有了这个value .

这是您需要的代码:

$('input[type="range"]').on('input', function() {
  $('span#a').css('margin-left', parseInt($(this).val() - 10) > 0 ? parseInt($(this).val() - 10) + '%' : '0px');
});

演示:

$('input[type="range"]').on('input', function() {
  $('span#a').css('margin-left', parseInt($(this).val() - 10) > 0 ? parseInt($(this).val() - 10) + '%' : '0px');
});
input {
  width: 90%;
}

span#a {
  display: block;
  width: auto;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="range" min="0" max="100" step="1" value="0" />
<span id="a">I'm following.</span>

注意:

  • 这将更新 span左边距与值成正比 的 range , 所以它将在 0% 之间更新至 100% ,这给了它漂浮的效果。

  • 在下面的示例演示中,margin-left值(value)需要更多
    调整,这样它会得到更好的结果。逻辑是有的,但是
    只需要一些调整。

关于javascript - 如何在输入类型范围内创建 float 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43866790/

相关文章:

javascript - 在我的 Shopify Liquid 主题中添加并解析我自己的 JSON 对象

javascript - 单击单独的按钮时读取输入字段文件

java - 单击提交按钮后如何运行多个 servlet?

javascript - 从 HTML 网站查询或搜索 CSV 的最佳方式

javascript - 为什么我的 bootstrap 5 弹出框返回 Uncaught TypeError?

javascript - 如何链接不同域中的javascript

javascript - 为什么 Array.prototype.reduce() 不将空对象字面量作为初始值?

jquery - Highchart 在单个网页中显示多个条形图

Jquery 无法检测 IE 11

javascript - 单击 slider 下一个和上一个按钮时,我得到 $curr[action] 不是函数