Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 08.08.2015, 13:37
Интересующийся
Отправить личное сообщение для Арсений JustPuk Посмотреть профиль Найти все сообщения от Арсений JustPuk
 
Регистрация: 24.03.2014
Сообщений: 23

Как сделать срабатывание вызова скрипта Vivus при определенном классе родителя?
Добрый день. Туплю сильно, прошу не бить )
Есть скрипт Vivus для анимации SVG. Нужно запускать анимацию только при наличии у родителя класса active. Прошу помочь.
Структура документа
<div class="class active (active добавляется динамически)">
<div class="">
<div class="">
<svg id="svg-id">
</div>
</div>
</div>

Обработчик
var svgId = new Vivus('svg-id', {start: 'manual'});
if($('#svg-id').parent(.class).hasClass('active')) svgId.play(1);
Ответить с цитированием
  #2 (permalink)  
Старый 08.08.2015, 13:57
Аватар для EmperioAf
Профессор
Отправить личное сообщение для EmperioAf Посмотреть профиль Найти все сообщения от EmperioAf
 
Регистрация: 15.01.2015
Сообщений: 622

с помощью classList.contains можно проверить наличие класса у DOM-элемента:
https://developer.mozilla.org/ru/doc...ment/classList
Ответить с цитированием
  #3 (permalink)  
Старый 08.08.2015, 14:01
Интересующийся
Отправить личное сообщение для Арсений JustPuk Посмотреть профиль Найти все сообщения от Арсений JustPuk
 
Регистрация: 24.03.2014
Сообщений: 23

Не могли бы вы чуть подробнее. Как на практике применить.
Ответить с цитированием
  #4 (permalink)  
Старый 08.08.2015, 14:31
Аватар для EmperioAf
Профессор
Отправить личное сообщение для EmperioAf Посмотреть профиль Найти все сообщения от EmperioAf
 
Регистрация: 15.01.2015
Сообщений: 622

ну наверное так :
if (document.querySelector('.class').classList.contains('active'){
    var svgId = new Vivus('svg-id', {start: 'manual'});
    if($('#svg-id').parent(.class).hasClass('active')) svgId.play(1);
}
Ответить с цитированием
  #5 (permalink)  
Старый 08.08.2015, 15:12
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

Сообщение от Арсений JustPuk
).parents(кавычки.classкавычки).
Ответить с цитированием
  #6 (permalink)  
Старый 08.08.2015, 17:33
Интересующийся
Отправить личное сообщение для Арсений JustPuk Посмотреть профиль Найти все сообщения от Арсений JustPuk
 
Регистрация: 24.03.2014
Сообщений: 23

Ошибку Uncaught SyntaxError: Unexpected token выдает
Ответить с цитированием
  #7 (permalink)  
Старый 08.08.2015, 18:38
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

Сообщение от Арсений JustPuk
Unexpected token выдает
на какую строку кода?
Ответить с цитированием
  #8 (permalink)  
Старый 08.08.2015, 18:40
Аватар для EmperioAf
Профессор
Отправить личное сообщение для EmperioAf Посмотреть профиль Найти все сообщения от EmperioAf
 
Регистрация: 15.01.2015
Сообщений: 622

Сообщение от Арсений JustPuk Посмотреть сообщение
Ошибку Uncaught SyntaxError: Unexpected token выдает
да, действительно я случайно забыл скобку поставить, т.к. писал прямо здесь.
if (document.querySelector('.class').classList.contains('active')){
    var svgId = new Vivus('svg-id', {start: 'manual'});
    if($('#svg-id').parent(.class).hasClass('active')) svgId.play(1);
}
Ответить с цитированием
  #9 (permalink)  
Старый 08.08.2015, 19:02
Интересующийся
Отправить личное сообщение для Арсений JustPuk Посмотреть профиль Найти все сообщения от Арсений JustPuk
 
Регистрация: 24.03.2014
Сообщений: 23

Очень странно. Я думал, что этот вызов будет работать. Не могли бы вы помочь, не могу запустить анимацию
Ответить с цитированием
  #10 (permalink)  
Старый 08.08.2015, 19:15
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

Сообщение от EmperioAf
parent(.class)
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сделать, чтобы при вводе числа в поле добавлялись разделители групп разрядов? Hurray Элементы интерфейса 13 18.02.2015 14:07
[windows.open] как сделать только при закрытии? candro Общие вопросы Javascript 3 11.02.2015 22:42
Как сделать, чтобы музыка <embed> на странице не играла только при первом посещении? Bad Request Общие вопросы Javascript 22 27.07.2009 19:44
Как сделать, чтобы 2 ссылки отображались как hover при наведении мышкой на любую? Ava Элементы интерфейса 5 19.05.2009 23:24
Срабатывание скрипта при загрузке страницы bormax Общие вопросы Javascript 3 03.04.2008 09:57