Javascript.RU

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

Передать класс
Как при клике по блоку передать классы этого блока другому блоку? Можно ли на jQuery переопределить классы? В js просто, className, а на Query такого нет. Спасибо.

Последний раз редактировалось Uthvfy62, 06.08.2024 в 05:37.
Ответить с цитированием
  #2 (permalink)  
Старый 06.08.2024, 09:10
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,743

Для работы с классами лучше использовать classList. Можно работать с отдельными классами - добавлять, удалять, проверять...

https://learn.javascript.ru/styles-a...me-i-classlist
https://developer.mozilla.org/ru/doc...ment/classList

В jquery есть аналогичные методы
https://api.jquery.com/category/mani...ass-attribute/

Вместо className можно обращаться к атрибуту class .attr('class')
Ответить с цитированием
  #3 (permalink)  
Старый 06.08.2024, 10:14
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,205

Сообщение от Uthvfy62
В js просто, className, а на Query такого нет.
Зачем специально упираться с "именно на jQuery"?
Гораздо эффективнее брать более удобные варианты решения задач...
Ответить с цитированием
  #4 (permalink)  
Старый 11.08.2024, 08:00
Интересующийся
Отправить личное сообщение для Uthvfy62 Посмотреть профиль Найти все сообщения от Uthvfy62
 
Регистрация: 09.05.2024
Сообщений: 22

я считаю что в js можно манипулировать только одним элементом. Если у меня два блока с одинаковым классом то js выберет 1 а второй проигнорирует. Я сколько раз пробывал указать querySelectorAll. и ничего не выходит, всё равно в приоритете только первый элемент. Если из ul я выберу все li, то изменится только первый li. Сколько раз пробывал. С тех пор отказался от js, и полностью перешёл на jquery. Да, в js это делается элементарно, className, и все дела. А jquery наоборот, выбирает все элементы, но переопределить классы проблематично. Для меня. У других наверно нет, но у меня так. И вопрос стоит не переименовании классов, а в назначении классов другому блоку. Надо при клике по блоку к примеру с классом block1 назначить этот класс другому блоку. Кликнул по block1 и у целевого блока тоже стал block1.
Ответить с цитированием
  #5 (permalink)  
Старый 12.08.2024, 10:18
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,205

Сообщение от Uthvfy62
Я сколько раз пробывал указать querySelectorAll. и ничего не выходит, всё равно в приоритете только первый элемент. Если из ul я выберу все li, то изменится только первый li.
Хоть бы показал как ты это "пробовал"...

<style>
.on {
	color: green;
}
</style>
<ul>
	<li>Элемент 1</li>
	<li>Элемент 2</li>
	<li>Элемент 3</li>
</ul>

<script>
document.querySelectorAll('li').forEach(o => o.classList.add('on'))
</script>

Стиль применится ко всем элементам. Никаких приоритетов к "первому элементу" нет.
Ответить с цитированием
  #6 (permalink)  
Старый 12.08.2024, 22:40
Интересующийся
Отправить личное сообщение для Uthvfy62 Посмотреть профиль Найти все сообщения от Uthvfy62
 
Регистрация: 09.05.2024
Сообщений: 22

а я просто брал document.querySelectorAll и добавлял classList.add. Спасибо, теперь буду знать как. А то я вообще разочаровался в js после тшетных попыток.
Ответить с цитированием
  #7 (permalink)  
Старый 12.08.2024, 23:04
Интересующийся
Отправить личное сообщение для Uthvfy62 Посмотреть профиль Найти все сообщения от Uthvfy62
 
Регистрация: 09.05.2024
Сообщений: 22

Скажите, интересует такой вопрос, как можно удалить слово или фразу из текста. Например из фразы "Быстрый ответ" удалить слово Быстрый. С учётом того что этого слова много в тексте.
Ответить с цитированием
  #8 (permalink)  
Старый 12.08.2024, 23:07
Интересующийся
Отправить личное сообщение для Uthvfy62 Посмотреть профиль Найти все сообщения от Uthvfy62
 
Регистрация: 09.05.2024
Сообщений: 22

Так всё таки, как при клике по блоку передать классы этого блока другому блоку?
Ответить с цитированием
  #9 (permalink)  
Старый 13.08.2024, 06:02
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,791

Сообщение от Uthvfy62
Так всё таки, как при клике по блоку передать классы этого блока другому блоку?
<div id="first" class="class1 class2 class3">first</div>
<div id="second" class="class4 class5 class6">second</div>

<script>
first.addEventListener('click', () => {
	second.classList.add(...first.classList);
});
</script>
Ответить с цитированием
  #10 (permalink)  
Старый 13.08.2024, 09:28
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,205

Сообщение от Uthvfy62
А то я вообще разочаровался в js после тшетных попыток.
Так можно в любом ЯП разочароваться...

Сообщение от Uthvfy62
как можно удалить слово или фразу из текста. Например из фразы "Быстрый ответ" удалить слово Быстрый. С учётом того что этого слова много в тексте.
Я же показывал как такое сделать...
https://javascript.ru/forum/misc/860...tml#post555959
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как дублировать класс ethereal Элементы интерфейса 12 13.06.2019 12:03
Подскаите как менять класс у елемента в зависимость от класса другово елемента NirVanea Общие вопросы Javascript 4 10.09.2015 13:51
Добавить / удалить класс кликом fabrique Общие вопросы Javascript 4 03.09.2014 04:43
Можно ли передать переменную ajax'om ? Vladislav Общие вопросы Javascript 2 18.02.2013 06:34
Jquery немогу установить класс! shureg Общие вопросы Javascript 4 26.10.2010 14:37