Вы можете попробовать использовать простой старый JavaScript. В этом случае вы можете передать параметр this
вызову функции (в данном случае это относится к элементу, на который нажата кнопка.
<a href="#" id="home" class="test" onclick="addClickListener(this)">HOME</a>
Кроме того, в определении функции параметр является объектом DOM привязанного тега, поэтому вы можете получить его свойства, подобные этому
function addClickListener(anchorObj){
console.log( anchorObj.id );
}
Смотрите демонстрационную версию ниже:
function addClickListener(anchorObj){
console.log( anchorObj.id );
}
<nav>
<a href="#" id="home" class="test" onclick="addClickListener(this)">HOME</a>
<a href="#" id="about" class="test" onclick="addClickListener(this)"> ABOUT</a>
<a href="#" id="services" class="test" onclick="addClickListener(this)">SERVICES</a>
<a href="#" id="photos" class="test" onclick="addClickListener(this)">PHOTOS</a>
<a href="#" id="rentals" class="test" onclick="addClickListener(this)">RENTALS</a>
</nav>
Однако , поскольку вы спросили, как это сделать в JQuery. Я покажу вам это.
Код ниже привязывает прослушиватель событий onclick ко всем привязным тегам в документе.
$('a').on('click', function() {...}
Дайте мне знать, если вам нужно уточнить, что делает код.
// wrap your definition in this to ensure the document is ready first
$(function() {
// bind an event listener to the anchor tags
$('a').on('click', function() {
// this refers to the anchor tag clicked on.
console.log($(this).attr('id'));
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<nav>
<a href="#" id="home" class="test">HOME</a>
<a href="#" id="about" class="test">ABOUT</a>
<a href="#" id="services" class="test">SERVICES</a>
<a href="#" id="photos" class="test">PHOTOS</a>
<a href="#" id="rentals" class="test">RENTALS</a>
</nav>