2016-06-24 2 views
0
<div id="main">  

<div id="rating"> 

    <div> <img src=""/> <p>0</p> </div> 

</div> 

<div id="main"> 

Я хочу увеличивать число внутри p каждый раз, когда я нажимаю на внутренний div. Я пробовал некоторые методы. Но они работают только с кнопками, и я не хочу менять HTML.Добавить +1 в p каждый раз, когда divis нажал

+0

Вы можете прикрепить обработчик событий для произвольных элементов DOM с Javascript, а не только к кнопкам. См. Https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener, в котором есть примеры. – moxn

ответ

0

Просто связать обработчик события щелчка и обновить текст внутри тега p на мыши.

// add click event handler to the div 
 
document.getElementById('rating').addEventListener('click', function() { 
 
    // get p element inside the div 
 
    var p = this.querySelector('p'); 
 
    // update the content 
 
    p.textContent = Number(p.textContent) + 1; 
 
});
<div id="main"> 
 
    <div id="rating"> 
 
    <div> 
 
     <img src="" /> 
 
     <p>0</p> 
 
    </div> 
 
    </div> 
 
</div>

+0

Спасибо. Но дело в том, что я не могу добавить jquery. – yonige

+0

@yonige: обновлено –

+0

Это работает, спасибо. Еще один вопрос. Что мне делать, если я хочу сделать все это (например) 3 DIVs? – yonige

Смежные вопросы