2016-10-29 82 views
2

基本上我試圖implement this如何更新標籤值與滑塊更新值

這是我的HTML:

 <td> 
      <p> 
       <button type="button" class="btn btn-danger m-r-sm" id="slider-step-value">5</button> 
       Speed 
      </p> 
      <div id="basic_slider_1"></div> 
     </td> 

這是我初始化我的網頁上4個滑塊:

$("#basic_slider_1, #basic_slider_2, #basic_slider_3, #basic_slider_4").noUiSlider({ 
    start: 3, 
    step: 1, 
    behaviour: 'tap', 
    connect: 'upper', 
    range: { 
     'min': 1, 
     'max': 10 
    }, 
    pips: { 
     mode: 'steps', 
     density: 1 
    } 
    }); 

所以,我希望發生的就是,如圖basic_slider_#生成的值(其中#可以是1, 2, 3 or 4),它應該更新與basic_slider_#相關的slider-step-value的值。

怎樣運用呢?

回答

2

Working fiddle

我認爲你在尋找什麼:

var sliders = $('.slider'); 
 
var buttons = $('.slider-step-value'); 
 

 
for (var i = 0; i < sliders.length; i++) { 
 
    var button = $(sliders[i]).prev('p').find('button')[0]; 
 
    
 
    noUiSlider.create(sliders[i], { 
 
    start: 3, 
 
    step: 1, 
 
    behaviour: 'tap', 
 
    range: { 
 
     'min': 1, 
 
     'max': 10 
 
    }, 
 
    pips: { 
 
     mode: 'steps', 
 
     density: 1 
 
    } 
 
    }); 
 
    
 
    attachEvent(sliders[i], button); 
 
} 
 

 
function attachEvent(slider,button){ 
 
    slider.noUiSlider.on('update', function(values, handle) { 
 
    button.innerText = parseInt(values[handle]); 
 
    }); 
 
}
.slider .noUi-origin { 
 
\t background: #c0392b; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<link href="https://cdnjs.cloudflare.com/ajax/libs/noUiSlider/8.2.1/nouislider.min.css" rel="stylesheet"/> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/noUiSlider/8.2.1/nouislider.min.js"></script> 
 

 
<p> 
 
    <button type="button" class="btn btn-danger m-r-sm slider-step-value">5</button> 
 
    Speed 
 
</p> 
 
<div class="slider"></div> 
 
<br><br> 
 
<p> 
 
    <button type="button" class="btn btn-danger m-r-sm slider-step-value">6</button> 
 
    Speed 
 
</p> 
 
<div class="slider"></div>

+0

我想主要的問題我會問的是,我該如何選擇'slider_step_value'最接近當前操作' basic_slider'?有多個'div.slider-step-value' – marcamillion

+0

_how如何選擇slider_step_value_您選擇的是什麼? –

+0

含義,請確保更新了正確的值。換句話說,在你的例子中,如果你複製了整個'p'標籤,它能正常工作嗎?我很懷疑,因爲所有'div#slider-step-value'都會更新。公平地說,一個ID應該只應用於1個元素,但是你可以用'class'來交換。這個想法是,我想要更新最接近'basic_slider'的按鈕,而不是頁面上的其他任何'按鈕'。 – marcamillion