Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 09.10.2011, 14:47
Новичок на форуме
Отправить личное сообщение для varpa89 Посмотреть профиль Найти все сообщения от varpa89
 
Регистрация: 09.10.2011
Сообщений: 1

Dockable интерфейс
Всем привет! Делаю проект в универе. Для начала хочу разобраться как сделать dockable Интерфейс (перетаскивание окон как, например, Вижуал Студио или Эклипс). Смысл в том, что есть несколько дивов и при перетаскивании на них объект должен пристыковываться к ним и менять размер. Одна из проблем: не могу дропнуть объект из большего в меньший. Ну и соответственно, чтобы при изменении размеров дивов, в которые можно дропать, менялся и размер дропнутого объекта.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
		<script type="text/javascript" src="js/jquery.min.js"></script>
		<script type="text/javascript" src="js/jquery-ui.min.js"></script>
		<style>
			html, body{height:100%; margin-top: 0px; margin-right: 0px; margin-left: 0px;}
			.leftdiv {float: left; width: 30%; height: 100%; background: red;}
			.rightdiv {float: left; width: 70%; height: 100%;background: blue;}
			.bottomdiv {width: 100%; height: 30%; background: yellow;}
			.drophover {opacity:0.8}
		</style>
		<script type="text/javascript">
			$(init);
			function init(){
				$('.makeMeDraggable')
					.draggable({
						cursor: 'move',
						containment: 'window',
						snap: '.makeMeDroppable',
						snapMode: 'inner'
					});
				$('.makeMeDroppable').droppable({
					hoverClass: 'drophover',
					drop: dropEvent
				});
			};
			function dropEvent(event, ui){
				var new_width = $( this ).width();
				var new_height = $( this ).height();
				ui.draggable
					.css('width', new_width)
					.css('height', new_height)
					.position( { of: $(this), my: 'left top', at: 'left top' } );
			};
		</script>
	</head>
	<body>
		<div style="width: 100%; height: 70%">
			<div class="leftdiv makeMeDroppable">
			Первая колонка
			</div>
			<div class="rightdiv makeMeDroppable">
			Вторая колонка
				<div class="makeMeDraggable" style="background: gray; width: 50px; height: 50px;"> 
					<div>Header</div>
					<div>Content</div>
				</div>
			</div>
		</div>
		<div class="bottomdiv makeMeDroppable">
		Третья колонка
		</div>
	</body>
</html>
Ответить с цитированием
  #2 (permalink)  
Старый 10.10.2011, 08:50
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,215

varpa89, сколько платишь?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Интерфейс с передвижными окнами nemoon Общие вопросы Javascript 1 16.06.2011 09:24
AJAX и интерфейс Xaver AJAX и COMET 1 25.04.2011 09:11
Как можно что-нибудь узнать про интерфейс чужого объекта GRIG Internet Explorer 0 09.03.2011 17:16
Двухязыковый интерфейс сайта Andrew256 Оффтопик 3 24.02.2011 02:25
вопрос про сверхдинамичный интерфейс Гость AJAX и COMET 2 05.04.2008 01:02