box1
box2
box3
box4
<style> #box1 {width: 100px; height: 100px; background-color: red;} #box2 {width: 100px; height: 100px; background-color: cyan;} #box3 {width: 100px; height: 100px; background-color: green;} #box4 {width: 100px; height: 100px; background-color: magenta;} </style> <body> <div id="box1">box1</div> <div id="box2">box2</div> <div id="message1"></div> <hr> <div id="box3">box3</div> <div id="box4">box4</div> <div id="message2"></div>
<script> ;(function() { document.addEventListener('DOMContentLoaded', function() { clickBox1(); clickBox2(); }); var box1 = document.getElementById('box1'); var box2 = document.getElementById('box2'); var message1 = document.getElementById('message1'); function clickBox1() { box1.addEventListener('click', function() { message1.textContent = ''; message1.textContent = 'box1がクリックされました。'; }); } function clickBox2() { box2.addEventListener('click', function() { triggerEvent(box1, 'click'); }); } function triggerEvent(elm, e) { var evt = document.createEvent("HTMLEvents"); evt.initEvent(e, true, true ); // event type, bubbling, cancelable return elm.dispatchEvent(evt); } })(); </script> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> <script> ;(function() { $(function() { clickBox3(); clickBox4(); }); var box3 = $('#box3'); var box4 = $('#box4'); var message2 = $('#message2'); function clickBox3() { box3.on('click', function() { message2.text('').text('box3がクリックされました。'); }); } function clickBox4() { box4.on('click', function() { $('#box3').trigger('click'); }); } })(); </script>