Идентификатор должен быть уникальным в документе, используйте вместо него класс.Вы можете использовать $(this).find('.data')
для переключения определенного элемента:
$(".Datanewpost").click(function(){
$(this).find('.data').toggle();
});
.data{color: red}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="data-main">
<div class="Datanewpost">
Data 1
<div class="data"> Hello</div>
</diV>
<div class="Datanewpost">
Data 2
<div class="data"> Hello</div>
</div>
<div class="Datanewpost">
Data 3
<div class="data"> Hello</div>
</div>
<div class="Datanewpost">
Data 4
<div class="data"> Hello</div>
</div>
<div class="Datanewpost">
Data 5
<div class="data"> Hello</div>
</div>
</div>
Как и в комментарии, вы просили закрыть открытие div
при нажатии другого, просто переберите все .data
, кроме текущегоодин.Затем проверьте свойство display='block'
, чтобы установить для него значение display='none'
:
$(".Datanewpost").click(function(){
$(this).find('.data').toggle();
var current = $(this).find('.data');
$('.data').not(current).each(function(i, el){
if(this.style.display=='block')
this.style.display = 'none';
});
});
.data{
color: red;
display: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="data-main">
<div class="Datanewpost">
Data 1
<div class="data"> Hello</div>
</diV>
<div class="Datanewpost">
Data 2
<div class="data"> Hello</div>
</div>
<div class="Datanewpost">
Data 3
<div class="data"> Hello</div>
</div>
<div class="Datanewpost">
Data 4
<div class="data"> Hello</div>
</div>
<div class="Datanewpost">
Data 5
<div class="data"> Hello</div>
</div>
</div>