您认为将此jquery转换为包含IE的纯js的最佳方法是什么? (附上event / addeventlistener)
$('.star.rating').click(function(){
console.log( $(this).parent().data('stars') + ", " + $(this).data('rating'));
$(this).parent().attr('data-stars', $(this).data('rating'));
});
答案 0 :(得分:1)
要访问父级,您可以在触发处理程序的元素上使用.parentNode
。
document.querySelectorAll('.star.rating').forEach(elem, function() {
elem.addEventListener('click', setRating);
});
function setRating() {
var rating = this.getAttribute('data-rating');
var parent = this.parentNode;
var stars = parent.getAttribute('data-stars');
console.log(stars + ", " + rating);
parent.setAttribute('data-stars', rating);
}