Изменение класса с помощью Javascipt - PullRequest
1 голос
/ 31 октября 2019

Простите за мой глупый вопрос, я новичок: / Почему-то я не могу использовать Jquery из-за некоторых вещей с темой Divi на Wordpress.

Мне нужно изменить класс css на какой-тоссылки, так что они будут менять цвет, если они выбраны (эти ссылки показывают различное содержимое div)

Я пробовал это:

function linkcolor() {
   document.getElementById(arguments[0]).className='serveminus'; 
   for(var i=1; i< arguments.length-1; i++){
   document.getElementById(arguments[i]).className='serve'; }  
        }

Когда я вызываю функцию, я добавляю якоряидентификаторы в качестве параметров. Первый из них будет показан как «выбранный» (serveminus), а другой будет недоступен (подача). Каким-то образом у меня это работает, но мне нужна другая функция: когда ссылка уже выбрана и у нее есть класс serveminus, при повторном нажатии этот класс снова становится «serve».

Если я добавлю следующее условие, я предполагаю, что оно генерирует бессмысленный цикл ....

 if (document.getElementById(arguments[0]).className='serveminus') {
        document.getElementById(idlink).className='serve';
     } else {

Если вы можете ... пожалуйста, привет;) Извините еще раз, я думаю, это должно быть глупо: |

1 Ответ

1 голос
/ 31 октября 2019

Похоже, вам нужно установить прослушиватель события onClick: https://developer.mozilla.org/en-US/docs/Web/API/EventListener

Псевдокод может быть:

if link is clicked and link is selected
  set event listener on link 
    onClick change class to 'serve'
    remove event listener
...