2012-02-07 3 views
3

В основном у меня фиксированный размер IFRAME с overflow: auto. IFRAME отображает данную страницу. То, что я пытаюсь добиться, - это перетащить содержимое IFRAME (чтобы контент можно было перемещать без использования полос прокрутки). Можно ли это сделать, если да, то как?jQuery UI draggable iFrame content

ответ

0

Вы должны получить доступ к странице IFrame, чтобы сделать это, скроллбары не являются частью родительской страницы. Если вы не можете изменить код там, я думаю, что это невозможно.

Я попытался что-то собрать. Это еще не идеален, но это начало:

$(function() { /* drag to scroll */ 
    var move = $('body'); 
    var x, y; 
    var scroll = false; 
    move.mousemove(function(event) { 
     if (scroll) { 
      move.scrollTop(move.scrollTop() + (y - event.pageY)); 
      move.scrollLeft(move.scrollLeft() + (x - event.pageX)); 
     } 
     x = event.pageX; 
     y = event.pageY; 
    }); 
    move.mousedown(function() { scroll = true; return false; }); 
    move.mouseup(function() { scroll = false; return false; }); 
}); 

jsfiddle пример: http://jsfiddle.net/jBdjm/

0

Посмотрите, работает ли пользовательский интерфейс jQuery. Существует перетаскиваемая функциональность и многие другие функции, которые вы, вероятно, тоже захотите, например, изменение размера.

http://jqueryui.com/demos/draggable/

+0

Да, я попытался с помощью перетаскиваться, но это не позволит мне перетащить содержимое IFRAME. – GSTAR

+0

Попробуйте это для iFrame: http://archive.plugins.jquery.com/project/jquery-framedialog –

+0

Нет, это не то, что мне нужно. – GSTAR