Я новичок в JS и jQuery, но я пытался использовать addClass()
и removeClass
с некоторыми переменными Javascript и не знаю, что я делаю неправильно.Использование переменной с jQuery addClass()
У меня есть эта система оценки 1-5 звезд.
Я хочу, чтобы он менял классы при зависании и сохранении рейтинга при нажатии.
HTML, выглядит следующим образом:
<span class="icon-rating-empty" id="blob1"></span>
и так далее для сгустков 2-5.
JS я в настоящее время является
var blob1 = document.getElementById('blob1');
var blob2 = document.getElementById('blob2');
var blob3 = document.getElementById('blob3');
var blob4 = document.getElementById('blob4');
var blob5 = document.getElementById('blob5');
var rating = 0;
blob1.addEventListener('hover', function() {
$(blob1).addClass("icon-rating-full").addClass("green-blob").removeClass("icon-rating-empty")
},
function() {
$(blob1).addClass("icon-rating-empty").removeClass("green-blob").removeClass("icon-rating-full")
});
blob1.addEventListener('click', function() {
rating = 1;
});
Это не работает-я уверен, что я не знаю, как обращаться с переменными с JQuery, но не может найдите любую статью о том, что я должен делать.
Я тестировал его, и если я использую $("#blob1")
вместо $(blob1)
, он работает, но я бы хотел использовать переменные, потому что у меня больше в плане.
микшерного Jquery события с классическим addeventlistener. Не делайте этого – rlemon
, если у вас есть * больше в плане * вы используете идентификатор 'blob1' и т. Д. ... Я предлагаю вам немедленно изменить свои планы (и вместо этого использовать один родительский класс) –
Вам следует добавить один обработчик события для всех пяти элементов и найдите рейтинг для элемента с кликом, используя атрибут data. – SLaks