Javascript.RU

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

не получается задать селекторы для draggable
есть 2 div'а- #block1 и #block2.
В #block1 находятся элементы -блоки красного цвета, при перетаскивании которых на #block2 срабатывает опция клонирования. Эти элементы становятся зелеными



$(function() {
   //
    $('#block1 .redBlock').draggable({
          helper:'clone'
    });

Задача такая: когда элемент находится в #block2, он тоже должен быть draggable, но создаваться еще 1 клон не должен

$('#block2').droppable({
        hoverClass: 'dropHere'
        ,drop: function(event, ui) {            
            $(this).append($('<div class="greenBlock">' + ui.draggable.html() + '</div>').draggable());            
        }
        ,over: function(event, ui) {
            console.log('over event');
        }
        
    });   
      
});


В JQUERY я- новичок, сегодня первый день "за рулем". Понимаю, что где-то в первой части кода можно прописать что-то вроде

$('#block1 .textBlock').draggable({
//родительский элемент после перетаскивания получает id=ui-droppable
        if(this.parent.id != 'ui-droppable')
          helper:'clone'
    });



Но при вводе условия,вообще не работает код.


Потом пробовали изменить вторую часть кода, что-то вроде:
$('#block2' div).droppable({
        hoverClass: 'dropHere'
        ,drop: function(event, ui) {            
            $(this).append($('<div class="greenBlock">' + ui.draggable.html() + '</div>').draggable("option", "helper", 'original'));            
        }


Здесь пытаемся задать опцию.draggable("option", "helper", 'original'));
Тоже код не работает корректно:перетаскивается только по 1 квадрату и они остаются красными, т.е. <div class="greenBlock"> не прописывается.

Опять же, еще один непонятный момент с селекторами. Ведь если у меня в начал функции прописано


Надеюсь, знатоки подскажут, где копать, а то уже сутки над проблемой бьюсь
Ответить с цитированием
  #2 (permalink)  
Старый 01.08.2015, 07:27
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

ИринаDfy,

<style>
.block1 .textBlock { background: red; }
.block2 .textBlock { background: green; }
</style>

<div class="block1">
	<div class="textBlock">Текст 1</div>
	<div class="textBlock">Текст 2</div>
	<div class="textBlock">Текст 3</div>
</div>
<div class="block2"></div>

<script>
$('.block1 .textBlock').draggable({
	scope: 'vasya',
	helper:'clone'
});
$('.block2').droppable({
	scope: 'vasya',
	drop: function (event, ui) {
		ui.draggable.clone().draggable({
			containment: 'parent'
		}).appendTo(this);
	}
});
</script>

Последний раз редактировалось Rise, 01.08.2015 в 07:38.
Ответить с цитированием
  #3 (permalink)  
Старый 01.08.2015, 09:59
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

ИринаDfy,
draggable droppable клонирование блоков

Последний раз редактировалось рони, 01.08.2015 в 10:02.
Ответить с цитированием
  #4 (permalink)  
Старый 01.08.2015, 10:19
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

рони, можно клон с ui.helper сделать если надо сохранить позицию.
Ответить с цитированием
  #5 (permalink)  
Старый 01.08.2015, 10:41
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

Rise,
ок - да можно - когда-то мне в ui.helper нехватило каких-то свойств - поэтому делал сначала клон ui.draggable а позицию брал от ui.helper
Ответить с цитированием
  #6 (permalink)  
Старый 01.08.2015, 13:15
Новичок на форуме
Отправить личное сообщение для ИринаDfy Посмотреть профиль Найти все сообщения от ИринаDfy
 
Регистрация: 01.08.2015
Сообщений: 3

Спасибо огромное за Ваши ответы, все помогло
Ответить с цитированием
  #7 (permalink)  
Старый 01.08.2015, 13:26
Новичок на форуме
Отправить личное сообщение для ИринаDfy Посмотреть профиль Найти все сообщения от ИринаDfy
 
Регистрация: 01.08.2015
Сообщений: 3

у вас замечательный форум, на самом деле, вчера просто почитала и нашла много тем, где этот вопрос уже был решен
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
задать hover для элемента bushstas Элементы интерфейса 43 28.11.2019 14:39
как для File.openDialog задать папку Averin500 Events/DOM/Window 2 06.01.2013 00:40
Новая система управления сайтом Scripto CMS deepslam Ваши сайты и скрипты 38 31.01.2011 14:55
Задать атрибуты option для select KonstantinK Элементы интерфейса 2 22.12.2010 13:39
Не получается задать двухмерный массив greatilya Общие вопросы Javascript 2 04.08.2010 11:01