어떤 div 안에 iframe이 있고, 그 div의 id가 'container'라고 가정.

$('#container iframe').load(function(){
    var iframeBody = $(this).contents().find('body');
 
    // 드래그 방지 (for IE)
    if (navigator.userAgent.indexOf('MSIE') > 0) {
        iframeBody.bind('contextmenu', function(){ return false; });
        iframeBody.bind('selectstart',     function(){ return false; });
        iframeBody.bind('dragstart',       function(){ return false; });
    }

    // 해당 iframe을 마우스 드래그로 잡고 움직이기
    iframeBody.mousedown(function(e){
        var orgX = e.clientX;
        var orgY = e.clientY;
 
        iframeBody.mousemove(function(e){
            $('#container').css('left', parseInt($('#container').css('left') + e.clientX - orgX);
            $('#container').css('top', parseInt($('#container').css('top') + e.clientY - orgY);
        });

        iframeBody.mouseup(function(e){
            iframeBody.unbind('mousemove');
        });

        iframeBody.mouseout(function(e){
            iframeBody.unbind('mousemove');
        });
    });
});




Posted by bloodguy
,