Форум программистов, компьютерный форум, киберфорум
jQuery
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
2 / 2 / 0
Регистрация: 04.11.2013
Сообщений: 101
1

Выборка элементов с присвоенным классов в JS

17.06.2014, 08:30. Показов 1033. Ответов 17
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Не могу выбрать элементы с только что присвоенным классом в JS. Думаю, что так и должно быть. Но может как-то можно?

Тут класс присваивается:

Javascript
1
2
3
4
5
6
7
8
9
$('#dropper1').droppable({
    drop: function() {
         бла     
            $('.ui-draggable-dragging').addClass('dropped1') //то самое
         бла 
         бла 
         бла         
        }
});


А потом я делаю так:

Javascript
1
2
3
$('.dropped1').contextmenu(function() {
    alert('Сука, я сделал это!');     
});
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.06.2014, 08:30
Ответы с готовыми решениями:

Группировка по присвоенным значениям
Здравствуйте! Помогите, пожалуйста, с группировкой. Имеется таблица Operations, вывожу 4 столбца...

Выборка нескольких однофамильцев в разных учебных классов
Есть таблица Класс - Фамилия 1-Иванов 1-Петров 1-Сидоров 1-Медведев 1-Путин 2-Ельцин...

Выборка без ключевых слов/Выборка без столбцов/Выборка с условием
Нужно сделать 2 типа выборки в отдельный столбец: #1 без ключевых слов типа "АРБУЗ, ДЫНЯ" #2 без...

Выборка элементов
Есть некий список, как сделать, стобы при клике на один из разделов меню, его индекс (n)...

17
97 / 97 / 74
Регистрация: 15.05.2014
Сообщений: 269
Записей в блоге: 2
17.06.2014, 10:17 2
Javascript
1
2
3
$( $( '.dropped1' ).get(0) ).contextmenu(function() {
    alert('Работает!');       
});
?
1
2 / 2 / 0
Регистрация: 04.11.2013
Сообщений: 101
17.06.2014, 11:12  [ТС] 3
Не
0
97 / 97 / 74
Регистрация: 15.05.2014
Сообщений: 269
Записей в блоге: 2
17.06.2014, 12:21 4
Что не?
http://jsfiddle.net/mihalken/7JBQb/4/
Что в консоли?
1
2 / 2 / 0
Регистрация: 04.11.2013
Сообщений: 101
17.06.2014, 18:28  [ТС] 5
По ссылке же другой метод задействован?

Так делал:
Javascript
1
2
3
4
var d2 = jQuery(document).find('.dropped1');
d2.on('click', function() {
    console.log('clicked! .d2');
});
Консоль молчит. Желания не исполняются.
0
97 / 97 / 74
Регистрация: 15.05.2014
Сообщений: 269
Записей в блоге: 2
19.06.2014, 08:52 6
Цитата Сообщение от Teterichev Посмотреть сообщение
Javascript
1
drop: function() {
Это выполняется? Что дропается в #dropper1?
Короче, HTML в студию.
1
2 / 2 / 0
Регистрация: 04.11.2013
Сообщений: 101
19.06.2014, 18:53  [ТС] 7
Да, это выполняется, претензий нет:
Javascript
1
2
3
4
5
6
7
8
9
$('#dropper1').droppable({
    drop: function() {
         бла        
         $('.ui-draggable-dragging').addClass('dropped1') //то самое
         бла    
         бла    
         бла            
        }
});

А вот выборка нет:
Javascript
1
2
3
4
var d2 = jQuery(document).find('.dropped1');
d2.on('click', function() {
    alert('ok');
});

В #dropper1 дропается следующие штуки:
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<div id='container'>
        <div id='quadrate1-1' class='quadrate quadrate1'>
        <h2>SKY.FM Mostly Classical </h2>
        </div>
        <div id='quadrate1-2' class='quadrate quadrate1'>
        <h2>SKY.FM Solo Piano</h2>
        </div>
        <div id='quadrate1-3' class='quadrate quadrate1'>
        <h2>Радио 'Орфей'</h2>
        </div>
        И т.д.
        И т.д.
        И т.д.
</div>
0
2 / 2 / 0
Регистрация: 04.11.2013
Сообщений: 101
22.06.2014, 14:33  [ТС] 8
Ребят, есть идеи?
0
636 / 523 / 195
Регистрация: 19.08.2013
Сообщений: 1,400
22.06.2014, 21:03 9
Так работает?
Javascript
1
2
3
document.on('click', '.dropped1',  function() {
    alert('ok');
});
1
97 / 97 / 74
Регистрация: 15.05.2014
Сообщений: 269
Записей в блоге: 2
23.06.2014, 08:18 10
Лучший ответ Сообщение было отмечено Teterichev как решение

Решение

Javascript
1
$('.ui-draggable-dragging')
Перетаскиваемому элементу автоматически назначается класс .ui-draggable. Непосредственно во время перетаскивания ему также дополнительно назначается класс .ui-draggable-dragging. ©wisdomweb.ru
Javascript
1
2
3
drop: function() {      
    $('.ui-draggable-dragging').addClass('dropped1') //то самое       
}
на
Javascript
1
2
3
4
5
6
drop: function( event, ui ) {
    ui.draggable
    .contextmenu(function() {
        alert('Работает!');       
    });
}
?
1
2 / 2 / 0
Регистрация: 04.11.2013
Сообщений: 101
23.06.2014, 11:18  [ТС] 11
Ребят, возможно я узко смотрю на свою проблему?

Описываю:
Есть чуть больше чем дохрена div'ов-квадратиков. Все они драггэйбл. Перетаскиваются сюда:

Выборка элементов с присвоенным классов в JS


На изображении #dropper1, #dropper2, #dropper3, #dropper4

Для каждого dropper'а выполняется ряд действий на событие drop (в т.ч. и присвоение класса .dropped1 "перетащенному" квадратику в #dropper1, .dropped2-#dropper2 и т.д.). Все норм

А теперь то, что мне нужно:
Мне нужно выполнять уже другой ряд действие с вновь присвоенным классом .dropped1, .dropped2, .dropped3, .dropped4
А именно:
Если квадратик будет сброшен на какой-либо dropper, то ему присваивается класс .dropped[ЦИФРАДРОППЕРА], а у того dropper'а происходит .draggable('option', 'disabled', true);
А вот если я кликну по классу .dropped[ЦИФРАДРОППЕРА] (что пока и не получается), то у того dropper'a[ЦИФРАДРОППЕРА] произойдет .draggable('option', 'disabled', false);
Но я не могу сделать такую выборку по вновь созданному классу. А больше я не знаю, за что его зацепить.
0
Все элементарное - сложно
133 / 118 / 50
Регистрация: 14.04.2014
Сообщений: 509
23.06.2014, 12:04 12
я, конечно, сейчас задам глупый вопрос, но где вы назначаете обработчик события? в каком месте js?

Добавлено через 29 секунд
почему не сразу после добавления класса?
1
2 / 2 / 0
Регистрация: 04.11.2013
Сообщений: 101
23.06.2014, 12:22  [ТС] 13
Запускаю здесь:
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
$('#dropper1').droppable({
    drop: function() {
            $('.ui-draggable-dragging').removeClass('vquadrate')        
            $('.ui-draggable-dragging').addClass('dropped1')
            $('.ui-draggable-dragging').css('left', '50%');
            $('.ui-draggable-dragging').css('top', '160px');            
            $('.ui-draggable-dragging').css('margin-left', '140px');    
            $('.ui-draggable-dragging').draggable('option', 'disabled', true);          
        }
});
$('.dropped1').click(function() {
    alert('ok');       
});
Кажется начал понимать... Я пытаюсь найти класс .dropped1 там, где его уже нету... Так?
Я не знаю как эти две вещи написать в одном обработчике
0
97 / 97 / 74
Регистрация: 15.05.2014
Сообщений: 269
Записей в блоге: 2
23.06.2014, 12:26 14
Цитата Сообщение от Teterichev Посмотреть сообщение
Кажется начал понимать... Я пытаюсь найти класс .dropped1 там, где его уже нету... Так?
Выборка элементов с присвоенным классов в JS
Класс который вы ищете .ui-draggable-dragging, когда добавляете класс .dropped1, не существует на тот момент когда происходит событие drop.
Цитата Сообщение от Teterichev Посмотреть сообщение
Я не знаю как эти две вещи написать в одном обработчике
Выборка элементов с присвоенным классов в JS
1
Все элементарное - сложно
133 / 118 / 50
Регистрация: 14.04.2014
Сообщений: 509
23.06.2014, 13:33 15
Цитата Сообщение от Teterichev Посмотреть сообщение
Кажется начал понимать... Я пытаюсь найти класс .dropped1 там, где его уже нету... Так?
.dropped1 как бы еще нету, если ваш код выполняется во время загрузки страницы.
1
2 / 2 / 0
Регистрация: 04.11.2013
Сообщений: 101
23.06.2014, 13:42  [ТС] 16
Нет. Класс, который я ищу это .dropped1. Про .ui-draggable-dragging я знаю, и использую его в другом случае.

Вот код элемента, который был сброшен:
HTML5
1
<div id="quadrate1-1" class="quadrate1 ui-draggable dropped1 ui-draggable-disabled ui-state-disabled" aria-disabled="true" style="left: 50%; top: 160px; margin-left: 140px;">
Более чем уверен, что в этом что-то есть:
Javascript
1
2
3
4
5
6
drop: function( event, ui ) {
    ui.draggable
    .contextmenu(function() {
        alert('Работает!');       
    });
}
Только мне нужно искать .dropped1 и выполнять еще и это:
Javascript
1
2
3
4
5
6
7
8
    drop: function() {
            $('.ui-draggable-dragging').removeClass('vquadrate')        
            $('.ui-draggable-dragging').addClass('dropped1')
            $('.ui-draggable-dragging').css('left', '50%');
            $('.ui-draggable-dragging').css('top', '160px');            
            $('.ui-draggable-dragging').css('margin-left', '140px');    
            $('.ui-draggable-dragging').draggable('option', 'disabled', true);          
        }

Мне нужно написать все в одном обработчике, так?
0
Все элементарное - сложно
133 / 118 / 50
Регистрация: 14.04.2014
Сообщений: 509
23.06.2014, 14:11 17
Лучший ответ Сообщение было отмечено Teterichev как решение

Решение

после
Цитата Сообщение от Teterichev Посмотреть сообщение
$('.ui-draggable-dragging').addClass('dropped1')
добавьте
Javascript
1
2
3
$('.dropped1').contextmenu(function() {
    alert('Сука, я сделал это!');       
});
Добавлено через 33 секунды
т.е. вы должны впихнуть класс в dom и сразу повесить обработчик
1
2 / 2 / 0
Регистрация: 04.11.2013
Сообщений: 101
23.06.2014, 14:28  [ТС] 18
Да!!! Так помогло!

Javascript
1
2
3
4
            $('.ui-draggable-dragging').addClass('dropped1')
            $('.dropped1').contextmenu(function() {
            alert('Сука, я сделал это!');       
            })
Всем огромнейшее спасибо, всем плюс стопицот лайков в карму :)
Ну и кнопочки на лучший ответ и на спасибо всем понажимал :):)

Спасибо огромное :)
0
23.06.2014, 14:28
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.06.2014, 14:28
Помогаю со студенческими работами здесь

Выборка элементов
Есть классы class Country { public Language languages{get;set;} } class Language { public...

выборка элементов
есть строка в таблице &lt;tr class=&quot;table-data&quot;&gt;&lt;td&gt;&lt;a href=&quot;book?searche=HUAASASAS&quot;&gt;&lt;div...

Выборка элементов
Все добный день, помогите пожалуйста с выборкой элементов в контексте контейнера. Есть такой...

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

Выборка элементов коллекции
Необходимо написать библиотеку, которая упростит работу с коллекцией однотипных объектов. Для...

Выборка из элементов с одинаковыми ID
Возникла такая проблема, необходимо сделать следующее: 1.Есть два поля ввода находящиеся в таблице...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru