Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 25.06.2014, 16:42
Интересующийся
Отправить личное сообщение для Nikola Flamel Посмотреть профиль Найти все сообщения от Nikola Flamel
 
Регистрация: 10.11.2013
Сообщений: 10

jQueryUI carousel
Здравствуйте.
Дело обстоит так, есть такая конструкция.
<div id="carouselMain">
<ul id="carouselChildOne">
<li><li>
<li><li>
</ul>
<ul id="carouselChildTwo">
<li><li>
<li><li>
</ul>
</div>


Помогите обработать событие, если я нажал на carouselMain и тяну курсор в право\лево только та ul на которой было нажатие двигалась в сторону куда тяну курсор. Если же нажав на carouselMain и тяну вниз\вверх, то весь блок carouselMain двигался в сторону нажатого курсора.
Заранее благодарю за помощь.
Ответить с цитированием
  #2 (permalink)  
Старый 25.06.2014, 16:45
Кандидат Javascript-наук
Отправить личное сообщение для Brutus Посмотреть профиль Найти все сообщения от Brutus
 
Регистрация: 24.11.2013
Сообщений: 127

Только так:
http://learn.javascript.ru/drag-and-drop
http://learn.javascript.ru/drag-and-drop-objects
Учи
Ответить с цитированием
  #3 (permalink)  
Старый 25.06.2014, 18:44
Кандидат Javascript-наук
Отправить личное сообщение для Brutus Посмотреть профиль Найти все сообщения от Brutus
 
Регистрация: 24.11.2013
Сообщений: 127

А вообще, держи http://learn.javascript.ru/play/RYGIfc

Последний раз редактировалось Brutus, 26.06.2014 в 12:10.
Ответить с цитированием
  #4 (permalink)  
Старый 25.06.2014, 23:58
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

draggable движение по инерции
Nikola Flamel,
Вариант ... жёлтый вверх ... красный вниз ... то и другое влево вправо ...
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  .imgSlider{
    border: 1px solid #dadada;
  	width: 550px;
  	height: 200px;
  	overflow: hidden;
  	position: relative;
}
.imgSlider .carousel{
	list-style: none;
    margin: 0;
  	padding: 0;
  	height: 200px;

  	overflow: hidden;
  	width: 100%;


}
.imgSlider .carousel li{
	list-style: none;
    margin: 0;
  	padding: 0;
  	height: 150px;
    width: 150px;
    margin: 25px 25px 25px 0px;
    background-color: gold;
    float: left;
}
.imgSlider .carousel li:first-child{
  margin-left: 25px;
}

.imgSlider .red li{
   background-color: red;
   margin: 0px 25px 25px 0px;
}
.map {
    display:  table;
    width: 1775px;
}
.imgSlider ul.red{
  height: 175px;
}

  </style>
</head>

<body>
<div class="imgSlider" id="carousel"><div class="map">
      <ul class="carousel">
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
      </ul>
      <ul class="carousel red">
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
      </ul></div>
    </div>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script src="https://code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
<script type="text/javascript">
	var route;
	$('.map').draggable(
	  {
	  drag: function (event, ui) {
	      var h = $(this).parent().height() - $(this).height(),
	      w = $(this).parent().width() - $(this).width();
	      ui.position.left > 0 && (ui.position.left = 0);
	      ui.position.top > 0 && (ui.position.top = 0);
	      ui.position.left < w && (ui.position.left = w);
	      ui.position.top < h && (ui.position.top = h);
	      Math.abs(route[0] - ui.position.top) < 50 && (ui.position.top = route[0]);
	    },
	  start: function(event, ui) {route =[ui.position.top, ui.position.left]},
	  stop: function(event, ui) {
          var pos = {}, w = Math[route[1] < ui.position.left ? 'ceil':'floor'](ui.position.left / 175)*175;
          var w = Math[ Math.abs(route[0] - ui.position.top) > 50 ? 'round' : route[1] < ui.position.left ? 'ceil':'floor'](ui.position.left / 175)*175;
	      Math.abs(route[0] - ui.position.top) > 50 && $(this).animate({top: route[0] > ui.position.top? -175: 0}, 600);
          $(this).animate({left: w}, 600);
	    }
	  }
	)
</script>
</body>
</html>

Последний раз редактировалось рони, 29.08.2018 в 09:40.
Ответить с цитированием
  #5 (permalink)  
Старый 26.06.2014, 12:10
Кандидат Javascript-наук
Отправить личное сообщение для Brutus Посмотреть профиль Найти все сообщения от Brutus
 
Регистрация: 24.11.2013
Сообщений: 127

Update 1 http://learn.javascript.ru/play/ZOox1

Последний раз редактировалось Brutus, 26.06.2014 в 13:06.
Ответить с цитированием
  #6 (permalink)  
Старый 26.06.2014, 13:03
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Brutus,
маленькое замечание двигая влево вправо ваш код не поддерживает это движение а стремится сохранить прежнее положение
Ответить с цитированием
  #7 (permalink)  
Старый 26.06.2014, 13:42
Кандидат Javascript-наук
Отправить личное сообщение для Brutus Посмотреть профиль Найти все сообщения от Brutus
 
Регистрация: 24.11.2013
Сообщений: 127

рони,
Ха я и не заметил
http://learn.javascript.ru/play/izSXEb

Последний раз редактировалось Brutus, 28.06.2014 в 00:37.
Ответить с цитированием
  #8 (permalink)  
Старый 28.06.2014, 21:01
Интересующийся
Отправить личное сообщение для Nikola Flamel Посмотреть профиль Найти все сообщения от Nikola Flamel
 
Регистрация: 10.11.2013
Сообщений: 10

Спасибо всем)
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
возник конфликт между jQueryUI и jQuery Altai jQuery 2 18.04.2014 00:12
jQuery Feature Carousel Plugin - Есть ли альтернатива? lraido AJAX и COMET 0 09.11.2011 21:39
Javascript carousel Anastasiya Общие вопросы Javascript 0 26.10.2011 00:34
Подключение jQueryUI NeoMurderer jQuery 3 27.03.2011 12:50
Стоит ли переходить с jqueryui 1.7.2 на 1.8.7? d0rc jQuery 0 20.12.2010 20:37