2016-07-22 1 views
3

부모님의 경계를 초과하지 않는 방법을 알아낼 수있는이 코드가 있습니다.부모님이 빠져 나오지 못하게하는 방법 div

객체는 드래그 가능하고 슬라이더로 크기를 조절하지만 어떻게 할 수 있습니까? 감사합니다.

$(document).on("input change",'.image-slider', function() { 

    $('#timelineBGload-perfil').draggable(); 

    var slider = parseInt($(this).val()); 

    var height1 = $('#timelineBGload-perfil').height(); 
    var width1 = $('#timelineBGload-perfil').width(); 

    var percent1 = width1/600 * 100; 

     var jeje = slider - 191; 
     var jeje2 = slider - 191; 

     $('#timelineBGload-perfil').css({'width': slider,'height':'auto'}); 

     $('#timelineBGload-perfil').css({'left': '-'+ jeje +'px','top': '-'+ jeje2 +'px'}); 

    }); 

https://jsfiddle.net/fypqgym1/

+1

jsfiddle에서 작업 중입니다. – Fil

+1

크기가 조정될 때까지 작업 –

+0

작동 시키셨습니까? – Scott

답변

0

당신은 당신이 그것을 이동하기 전에 계정에 이미지의 위치를 ​​가지고해야합니다. 나는 당신의 논리에이 키 섹션을 추가 : 당신은 그것을 그러나 당신이 필요로 할 이미지와 치수와 함께 작동하도록해야합니다 https://jsfiddle.net/fypqgym1/11/

:

여기
var previousLeft = $('#timelineBGload-perfil').css('left'); 
var previousTop = $('#timelineBGload-perfil').css('top'); 

일부 최적화로 동작하는 예제입니다. 시작할 때 원하는 방식으로 배치하는 초기화 단계를 추가 할 수도 있습니다.

+1

고맙게도 잘 작동, 그냥 이미지를 부모 div 나가서 더 높은 및 느린 이미지의 크기를 조정할 필요가 없습니다 –

+0

와우 년 원래 응답 후 +. 계산 된'left'와'top' 값을 확인하고'Math.max'와'Math.min'을 통해 이들을 최소값과 최대 값으로 제한하는 것처럼 보입니다. – Scott

+0

또한 듣기 좋게 잘 작동합니다. 도움이된다면 답을 수락 한 것으로 표시해야합니다. – Scott

관련 문제