this
будет ссылаться на фактический элемент DOM, поэтому вы можете проверить tagName
или className
, или искать $(this).parents('#header')
.
$('#header a, #nav a').click(function (event) {
var $this = $(this);
if ($this.parents("#header").length > 0) {
display("I'm inside #header");
}
else if ($this.parents("#nav").length > 0) {
display("I'm inside #nav");
}
else {
// Obviously this won't happen.
// None of us has *ever* changed a selector and forgotten to update the code! ;-)
display("I'm confused!");
}
return false;
});
Живой пример
Не по теме : Я согласен с Феликсом и Меласом, что, если вы действительно делаете что-то другое, рефакторинг в отдельные обработчики (возможно, вызов общих функций), вероятно, лучший путь ...