Foundation 6.2 Slider使用js设置值
Foundation 6.2 Slider set value with js
我想用javascript设置Slider的值,但我不知道怎么做。我试图修改隐藏输入的值,但是滑块手柄不动。
我的HTML:
<div class="slider" data-slider data-initial-start="50" data-step="5">
<span class="slider-handle" data-slider-handle role="slider" tabindex="1" ></span>
<span class="slider-fill" data-slider-fill></span>
<input type="hidden">
</div>
请帮帮我。谢谢
Hi当您移动滑块手柄时,新值将设置为隐藏输入。但是更改隐藏输入的值不会移动滑块。
所以你可以这样做:
var pos = 5;
mySlider = new Foundation.Slider( $("#my_slider"), {initialStart: pos});
我为此挣扎了一段时间,真正的关键是你需要做三件事:
- 创建带有隐藏输入字段的滑块
- 将输入字段的值设置为新位置
- 在字段上触发更改事件
下面是一个简单的例子,展示了它的工作原理。
$(document).foundation();
function jumpto(val) {
$("#exslider input").val(val).trigger('change');
}
// Just for grins, jump to a fixed location at the start.
jumpto(33);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
<link href="https://cdn.jsdelivr.net/npm/foundation-sites@6.6.3/dist/css/foundation.min.css" rel="stylesheet"/>
<!-- Compressed CSS -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/foundation-sites@6.6.3/dist/css/foundation.min.css" integrity="sha256-ogmFxjqiTMnZhxCqVmcqTvjfe1Y/ec4WaRj/aQPvn+I=" crossorigin="anonymous">
<!-- Compressed JavaScript -->
<script src="https://cdn.jsdelivr.net/npm/foundation-sites@6.6.3/dist/js/foundation.min.js" integrity="sha256-pRF3zifJRA9jXGv++b06qwtSqX1byFQOLjqa2PTEb2o=" crossorigin="anonymous"></script>
<div class="grid-x">
<div class="cell">
<label>This shows setting the values of a foundation slider without having to recreate the slider.
The key is that the hidden input automatically gets associated with the slider value.
Setting the value is not enough to cause it to be updated, it is necessary to trigger the change
event so that foundation knows to update the slider.
</label>
</div>
<div class="cell">
<div class="slider" id="exslider" data-slider data-end="100">
<span class="slider-handle" data-slider-handle role="slider" tabindex="1" aria-controls="sliderVal"></span>
<span class="slider-fill" data-slider-fill></span>
<input type="hidden">
</div>
</div>
<div class="cell">
<div class="button-group">
<a class="button" onclick="jumpto(5);">Jump to 5</a>
<a class="button" onclick="jumpto(50);">Jump to 50</a>
<a class="button" onclick="jumpto(100);">Jump to 100</a>
</div>
</div>
</div>
您必须将输入类型从隐藏更改为向滑块手柄添加aria-controlles="id","id"是输入的id-输入可以在页面上的任何位置,然后现在您只需要使用javascript 更改输入的值
<div class="slider" data-slider data-initial-start="50" data-step="5">
<span class="slider-handle" data-slider-handle role="slider" tabindex="1" aria-controls="myInputId" ></span>
<span class="slider-fill" data-slider-fill></span>
<input type="number" id="myInputId">
</div>
document.getElementById("myInputId").value = "99";
相关文章:
- Bookshelf.js设置的属性不在数据库中
- 通过js设置页面历史记录和页面内容
- Highcharts.js设置用于更改列颜色的阈值
- D3.js:设置贝塞尔曲线的动画
- 节点.js设置套接字 ID
- 使用 node.js 设置 Microsoft Access 数据库连接
- HTML + JS:设置文本区域内容样式的最佳方式
- 使用angular-moment.js设置日期格式
- JS:设置src更改的动画持续时间
- 如何使用node.js和express.js设置SSL
- Foundation 6.2 Slider使用js设置值
- 是否可以在CSS中为JS设置数据,以了解某些媒体查询正在应用
- 无法使用Node js设置cookie
- 当源代码由js设置时加载检查图像
- Three.js设置对象不透明度/透明度
- 通过 JS 设置为在浏览器关闭时过期的 Cookie 未过期
- 如何为 angular js 设置动态网址
- 三.js设置旋转矩阵超过90度时的奇怪行为
- 节点.js设置超时与回调
- D3.js设置突出显示的表格的样式