hack--イベントをトリガー

11193 ワード


<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Documenttitle>
    <script src="./jquery.js">script>
    <script>
        // $('div').on('click', function() {
      
        // console.log("TCL: $('div')", $('div'))
        //     alert('div click');
        // });
        // $('button').on('click', function() {
      
        //     $('div').trigger('click');
        // });
        $(function() {
      
            /**
             * @explain triggerEvent trigger  
             * @params obj   -- jquery  【 】
             * @params event   --  ‘click’  【 】
             * @params times   --  ‘10’  【 】
             * @params times  ( ) --  ‘500’  【 】
            */
            function triggerEvent(obj, event, times, interval) {
      
                event = event || 'click';
                times = times || 10;
                let num = 1;
                $(obj).on(event, function() {
      
                    console.log('trigger this div ' + num + ' timers');
                })
                $(obj).trigger(event)
                const timer = setInterval(() => {
      
                    num++;
                    $(obj).trigger(event);
                    if (num == times) {
      
                        console.log('triggerEvent is over and out')
                        clearInterval(timer);
                    }
                }, interval || 500);
            }

            setTimeout(() => {
       //todo   triggerEvent
                triggerEvent('#zhy', 'click', 100, 100)
            }, 5000);
            
        })
    script>
head>

<body>
    <div id="zhy">div>
    <button> button>
body>

html>