JQuery 移动 slider 句柄(提供 JSFiddle)

标签 jquery html css jquery-mobile

这是一个 JSFiddle:

https://jsfiddle.net/vxee5b79/7/

HTML:

<input type="range" name="slider-1" id="slider-1" min="1" max="9951" value="1" step="50">

<div data-role="rangeslider" data-track-theme="b" data-theme="a">
  <input type="range" name="range1" id="range1" disabled="disabled" min="0" max="10">
  <input type="range" name="range2" id="range2" disabled="disabled" value="10">
</div>

CSS:

.ui-btn.ui-slider-handle {
    display: none;
}

我的问题是,当我添加上述 CSS 时,它会按预期去除两个 slider 上的 slider handle 。有没有一种方法可以在移除底部 slider 上的 handle 的同时将 handle 保留在顶部 slider 上?

最佳答案

最简单的方法是将任何需要隐藏句柄的 slider 放置在容器 DIV 中:

<div class="hiddenHandle">
    <input type="range" name="slider-1" id="slider-1" min="1" max="9951" value="1" step="50">    
</div>
<div data-role="rangeslider" data-track-theme="b" data-theme="a">        
    <input type="range" name="range1" id="range1" disabled="disabled" min="0" max="10" value="2">        
    <input type="range" name="range2" id="range2" disabled="disabled" min="0" max="10" value="6">   
</div>

然后 CSS 可以使用该类:

.hiddenHandle .ui-btn.ui-slider-handle {
    display: none;
}

Updated FIDDLE

如果你不想要容器,你可以像这样使用 CSS:

#slider-1 + .ui-slider-track .ui-btn.ui-slider-handle {
    display: none;
}

jQM 在 INPUT 旁边创建一个 slider 轨道 DIV,因此 CSS 获取该 DIV 并使用 Adjacent Sibling selector 在其中找到句柄。

FIDDLE

关于JQuery 移动 slider 句柄(提供 JSFiddle),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32343580/

相关文章:

javascript - 如果显示 bootstrap 下拉列表,jQuery 在悬停在一定宽度上时添加类

javascript - 如果按钮禁用更改文本( Bootstrap )

javascript - 如何用 jQuery 控制 CSS 转换的速度?

javascript - 如何检索具有不同名称和值的多个单选按钮值

javascript - 我是否需要移除或删除我创建但未附加到 DOM 的 HTML 元素?

html - 响应式设计无法正常工作 - 显示太多

jquery - 在所有 .each() 发起的 AJAX 请求完成后运行代码

javascript - jQuery:动画图像连续向左和向右移动

javascript - 如何过滤页面源以获得纯 HTML - 无内容(仅标签)

css 在其父元素之间定位一个框