2017-02-14 7 views
0

이것은 호출 된 슬라이더 요소입니다. 나는 성공한 상태에서 그것을 멈추려고했지만 그 후에는 막혔다. 나는 else{ return true; }을 추가하려고했지만 그 다음에 나머지는 실행되지 않습니다. if else 블록을 끝까지 이동하면 코드가 실행되어 내가 원하는 바를 실행하지 않습니다.JQuery UI Slider는 return false를 사용하여 조건에서 정지 한 후 다시 시작합니다.

$(".hdrHt").slider({ 
    orientation: "horizontal", 
    range: "min", 
    max: 22, 
    min: 8, 
    value: 15, 
    create: function(){ $(this).find('.headHandle').text($(this).slider("value")+'%'); }, 
    slide: function(e,ui){ 
     var hfs=currentVid.find('.ovlDivs').css('font-size').replace('px',''),hht=currentVid.find('.headerDiv').css('height').replace('px',''); 
     if((parseInt(hfs)+10)>parseInt(hht)){ return false; } 
     currentVid.find('.middleDiv').css('height',(100-parseInt(currentVid.find('.ftrHt').slider("value"))-ui.value)+'%'); 
     currentVid.find('.headerDiv').css('height',ui.value+'%'); $(this).find('.headHandle').text(ui.value+'%'); 
     } 
}); 

답변

0

좋아, 너무 빨리 포기했다. 쉽지 않았다.하지만 여전히 깨끗한 해결책이 있다면 계속해라.

var stopPt=8; 
$(".hdrHt").slider({ 
    orientation: "horizontal", 
    range: "min", 
    max: 22, 
    min: 8, 
    value: 15, 
    create: function(){ $(this).find('.headHandle').text($(this).slider("value")+'%'); }, 
    slide: function(e,ui){ 
     if(ui.value>stopPt){ 
      currentVid.find('.middleDiv').css('height',(100-parseInt(currentVid.find('.ftrHt').slider("value"))-ui.value)+'%'); 
      currentVid.find('.headerDiv').css('height',ui.value+'%'); $(this).find('.headHandle').text(ui.value+'%'); 
     } 
     var hfs=currentVid.find('.ovlDivs').css('font-size').replace('px',''),hht=currentVid.find('.headerDiv').css('height').replace('px',''); 
     if((parseInt(hfs)+15)>parseInt(hht)){ stopPt=ui.value; return false; } 
     } 
});