JSFiddle - React, Tailwind, and code Playground
HTML
<!DOCTYPE html>
<html lang="en" ng-app="app">
<head>
<meta charset="utf-8" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.6.1/angular.min.js"></script>
<script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
<script src="module.js"></script>
<link rel="stylesheet" href="style.css" />
</head>
<body ng-controller="myController">
<div class="calendar">
<div class="ancestor-2">
<div class="ancestor-1">
Calendar
</div>
</div>
</div>
<div class="widget">
<div class="ancestor-2">
<div class="ancestor-1">
Not a calendar
</div>
</div>
</div>
</body>
</html>
CSS
.calendar {
margin: 20px;
padding: 20px;
border: 2px solid blue;
}
.widget {
margin: 20px;
padding: 20px;
border: 2px solid green;
}
JavaScript
(function () {
'use strict';
angular.module('app', []);
angular.
module('app')
.controller('myController', ['$scope', function ($scope) {
$(document).on('click', function ($event) {
var nativeElement = $event.target;
if ($(nativeElement).closest('.calendar').length) {
alert('Inside a calendar');
}
else {
alert('Outside a calendar');
}
});
}])
})();