Ваша проблема связана с вашим селектором closeBtn. То, как вы сейчас пишете, на самом деле не выбирает дочерний элемент для вашего родителя. Это на самом деле захватывает первый элемент, который соответствует вашему селектору, а не ВСЕ элементы, которые вы хотите.
Что вы хотите сделать, это создать переменную специально для дочернего диапазона.
var closeBtn = el.querySelectorAll(".delete-link")[0];
Это определенно получит диапазон .delete-link для текущего элемента. После этого вы можете отказаться от цикла for, это совершенно не нужно.
var socialField = document.querySelectorAll('.social-link');
socialField.forEach(function(el) {
var closeBtn = el.querySelectorAll(".delete-link")[0];
el.addEventListener('mouseover', function(){
closeBtn.style.opacity = 1;
});
el.addEventListener('mouseout', function(){
closeBtn.style.opacity = 0;
});
closeBtn.addEventListener("click", function() {
this.parentElement.style.display = 'none';
})
});
Рабочая скрипка: http://jsfiddle.net/0u7jxtfk/2/