2017-02-14 104 views
0

这是调用的滑块元素。我试图阻止它是成功的条件,但之后,它卡住了。我试图添加else{ return true; },但如预期的那样,它不运行其余的。如果我在末尾移动if else块,则代码运行,然后调整火灾,这不是我所希望的。使用返回false在条件停止后恢复JQuery UI Slider

$(".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; } 
     } 
});