首先,如果我的英语不太清楚,我很抱歉。我会尽量简明扼要。
正如我在标题中所说的,jQuery文件是加载的,但是它不能工作,我的意思是,它出现在头部(我已经尝试过将它放在页脚中),但是$函数没有被识别。几天来,我一直在调查这个问题,但是我没有成功。
我的functions.php头:
<?php
//Load jQuery
function loadjQuery() {
wp_deregister_script('jquery');
wp_register_script('jquery', get_template_directory_uri().'/js/jquery.min.js', array(), null);
wp_enqueue_script('jquery');
}
//Load js
function add_js(){
wp_register_script('jquery-migrate', get_template_directory_uri().'/js/jquery-migrate.min.js', array("jquery"), null);
wp_enqueue_script('jquery-migrate');
wp_register_script('jquery-waypoints', get_template_directory_uri().'/js/jquery.waypoints.min.js', array("jquery"));
wp_enqueue_script('jquery-waypoints');
wp_register_script('jquery-counterup', get_template_directory_uri().'/js/jquery.counterup.min.js', array("jquery"));
wp_enqueue_script('jquery-counterup');
wp_register_script('bootstrap', get_template_directory_uri().'/js/bootstrap/js/bootstrap.min.js', array('jquery'));
wp_enqueue_script('bootstrap');
wp_register_script('popper', get_template_directory_uri()."/js/popper.min.js"
, array('jquery'));
wp_enqueue_script('popper');
wp_register_script('easing', get_template_directory_uri()."/js/easing.min.js", array('jquery'));
wp_enqueue_script('easing');
wp_register_script('typed', get_template_directory_uri().'/js/typed/typed.min.js', array('jquery'));
wp_enqueue_script('typed');
wp_register_script('main', get_template_directory_uri().'/js/main.js', array('jquery'), null);
wp_enqueue_script('main');
}
add_action("wp_enqueue_scripts", "load_stylesheets");
add_action('wp_enqueue_scripts', 'loadjQuery',999);
add_action("wp_enqueue_scripts", "add_js", 999);
add_action('phpmailer_init','send_smtp_email');
?>我的main.js文件:
jQuery(function($) {
$('#preloader').addClass('preloader');
$(window).on("load", function() {
$(document).ready(function(){
$('.preloader').removeClass('preloader');
});
});
$(document).ready(function() {
"use strict";
var nav = $('nav');
var navHeight = nav.outerHeight();
$('.navbar-toggler').on('click', function() {
if( ! $('#mainNav').hasClass('navbar-reduce')) {
$('#mainNav').addClass('navbar-reduce');
}
})
// Back to top button
$(window).scroll(function() {
if ($(this).scrollTop() > 100) {
$('.back-to-top').fadeIn('slow');
} else {
$('.back-to-top').fadeOut('slow');
}
});
$('.back-to-top').click(function(){
$('html, body').animate({scrollTop : 0},1500, 'easeInOutExpo');
return false;
});
/*--/ Star ScrollTop /--*/
$('.scrolltop-mf').on("click", function () {
$('html, body').animate({
scrollTop: 0
}, 1000);
});
/*--/ Star Scrolling nav /--*/
$('a.js-scroll[href*="#"]:not([href="#"])').on("click", function () {
if (location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '') && location.hostname == this.hostname) {
var target = $(this.hash);
target = target.length ? target : $('[name=' + this.hash.slice(1) + ']');
if (target.length) {
$('html, body').animate({
scrollTop: (target.offset().top - navHeight + 5)
}, 1000, "easeInOutExpo");
return false;
}
}
});
// Closes responsive menu when a scroll trigger link is clicked
$('.js-scroll').on("click", function () {
$('.navbar-collapse').collapse('hide');
});
// Activate scrollspy to add active class to navbar items on scroll
$('body').scrollspy({
target: '#mainNav',
offset: navHeight
});
/*--/ End Scrolling nav /--*/
/*--/ Navbar Menu Reduce /--*/
$(window).trigger('scroll');
$(window).on('scroll', function () {
var pixels = 50;
var top = 1200;
if ($(window).scrollTop() > pixels) {
$('.navbar-expand-md').addClass('navbar-reduce');
$('.navbar-expand-md').removeClass('navbar-trans');
} else {
$('.navbar-expand-md').addClass('navbar-trans');
$('.navbar-expand-md').removeClass('navbar-reduce');
}
if ($(window).scrollTop() > top) {
$('.scrolltop-mf').fadeIn(1000, "easeInOutExpo");
} else {
$('.scrolltop-mf').fadeOut(1000, "easeInOutExpo");
}
});
/*--/ Star Typed /--*/
if ($('.text-slider').length == 1) {
var typed_strings = $('.text-slider-items').text();
var typed = new Typed('.text-slider', {
strings: typed_strings.split(','),
typeSpeed: 80,
loop: true,
backDelay: 1100,
backSpeed: 50
});
}
});
});我还尝试用$修改所有的‘jQuery’元素,并加载jquery的cdn,但是它也没有工作。
,提前谢谢!
发布于 2020-04-21 17:52:32
使用jQuery的正确方法是在自动执行匿名函数中,如下所示:
(function($) {
$('#preloader').addClass('preloader');
...
})(jQuery);https://stackoverflow.com/questions/61348639
复制相似问题