I know this is an old topic, but I had the same problem and solved it. So I want to share my solution, maybe useful for somebody else…
As @jcow said, my problem was originated from my theme… and at least I understood that my theme uses jQuery individually and it was loading the jQuery file at the footer.
I just changed the position of loading jQuery in the theme (made it load in the header) and the problem solved.
I changed this code:
wp_enqueue_script( 'boot1', get_template_directory_uri() . '/assets/vendors/jquery/jquery-3.6.1.min.js', array(),'', true );
To this:
wp_enqueue_script( 'boot1', get_template_directory_uri() . '/assets/vendors/jquery/jquery-3.6.1.min.js', array(),'');
If the last parameter in wp_enqueue_script was “true”, that means loading the script in the footer.