Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/268.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery在我的WordPress站点上不起作用_Javascript_Jquery_Wordpress_Themes - Fatal编程技术网

Javascript jQuery在我的WordPress站点上不起作用

Javascript jQuery在我的WordPress站点上不起作用,javascript,jquery,wordpress,themes,Javascript,Jquery,Wordpress,Themes,我尽了一切努力让jQuery代码正常工作,但似乎都不起作用。我已经检查了JavaScript脚本是否已排队并加载到浏览器源代码中,并且是否正确。我还查看了JavaScript控制台中的错误,没有发现任何错误。网站位于“”。我正在加载的脚本是“init.js” 我正在使用下面的代码将脚本排队: // Adding init file in the footer wp_enqueue_script( 'init-js', get_template_directory_uri() . '/assets

我尽了一切努力让jQuery代码正常工作,但似乎都不起作用。我已经检查了JavaScript脚本是否已排队并加载到浏览器源代码中,并且是否正确。我还查看了JavaScript控制台中的错误,没有发现任何错误。网站位于“”。我正在加载的脚本是“init.js”

我正在使用下面的代码将脚本排队:

// Adding init file in the footer
wp_enqueue_script( 'init-js', get_template_directory_uri() . '/assets/js/init.js', array( 'jquery' ), '', true );
那么不起作用的jQuery代码是:

jQuery(window).scroll(function() {
   if (scroll >= 50) {
     jQuery('.psad-nav-button').show()
     jQuery(".psad-nav").hide()
   }
   if (scroll < 50) {
     jQuery(".psad-nav").show()
     jQuery('.psad-nav-button').hide()
   } 
});
jQuery(窗口)。滚动(函数(){
如果(滚动>=50){
jQuery('.psad导航按钮').show()
jQuery(“.psad nav”).hide()
}
如果(滚动<50){
jQuery(“.psad nav”).show()
jQuery('.psad导航按钮').hide()
} 
});
以下是应受其影响的代码:



您的条件正在比较
scroll
的值,但是
scroll
是全局命名空间中的一个函数。检查函数是否大于或小于整数没有意义,并返回false。您的
if
语句总是错误的,永远不会发生。

您的条件是比较
scroll
的值,但是
scroll
是全局命名空间中的一个函数。检查函数是否大于或小于整数没有意义,并返回false。您的
if
语句总是错误的,永远不会发生。

您还没有定义if条件中使用的变量
scroll
。 scroll的值应为
document.body.scrollTop
,以获取文档中的当前滚动位置

jQuery(window).scroll(function() {
   var scroll = document.body.scrollTop;
   if (scroll >= 50) {
     jQuery('.psad-nav-button').show()
     jQuery(".psad-nav").hide()
   }
   if (scroll < 50) {
     jQuery(".psad-nav").show()
     jQuery('.psad-nav-button').hide()
   } 
});
jQuery(窗口)。滚动(函数(){
var scroll=document.body.scrollTop;
如果(滚动>=50){
jQuery('.psad导航按钮').show()
jQuery(“.psad nav”).hide()
}
如果(滚动<50){
jQuery(“.psad nav”).show()
jQuery('.psad导航按钮').hide()
} 
});

您尚未定义if条件中使用的变量
scroll
。 scroll的值应为
document.body.scrollTop
,以获取文档中的当前滚动位置

jQuery(window).scroll(function() {
   var scroll = document.body.scrollTop;
   if (scroll >= 50) {
     jQuery('.psad-nav-button').show()
     jQuery(".psad-nav").hide()
   }
   if (scroll < 50) {
     jQuery(".psad-nav").show()
     jQuery('.psad-nav-button').hide()
   } 
});
jQuery(窗口)。滚动(函数(){
var scroll=document.body.scrollTop;
如果(滚动>=50){
jQuery('.psad导航按钮').show()
jQuery(“.psad nav”).hide()
}
如果(滚动<50){
jQuery(“.psad nav”).show()
jQuery('.psad导航按钮').hide()
} 
});

谢谢大家的回复,我觉得自己很聪明!;)哈哈,你必须原谅我,我已经有一段时间没有使用JavaScript了。我也很惊讶它没有在JavaScript控制台中抛出任何错误。我是从一个关于tuts+的教程中获取代码的。我没有发现他们遗漏了变量“scroll”的声明。我修复了这个问题,效果很好,但后来意识到我在jQuery中命名了一个与全局函数同名的变量。我想知道这就是为什么它没有在JavaScript控制台中为未定义的变量抛出错误。最后,为了避免冲突,我还更改了变量名

下面是我最后使用的代码:

jQuery(window).scroll(function() {
    var psad_scroll = jQuery(this).scrollTop();
    var psad_nav = jQuery( ".psad-nav" );
    var psad_nav_button = jQuery( ".psad-nav-button" );

    function psad_show_nav() {
        if (Foundation.MediaQuery.atLeast( "medium" )) {
            psad_nav.show();
            psad_nav_button.addClass( "hide" ) ;
        }
    }

    function psad_hide_nav() {
        if (Foundation.MediaQuery.atLeast( "medium" )) {
            psad_nav_button.removeClass( "hide" );
            psad_nav.hide();
        }
    }

    if (psad_scroll >= 30) {
        psad_hide_nav();
        psad_nav_button.on({
            click: psad_show_nav,
            mouseenter: psad_show_nav
        });

    }
    if (psad_scroll < 30) {
        psad_show_nav();
    }
});
jQuery(窗口)。滚动(函数(){
var psad_scroll=jQuery(this.scrollTop();
var psad_nav=jQuery(“.psad nav”);
var psad_nav_button=jQuery(“.psad nav button”);
功能psad_show_nav(){
if(Foundation.MediaQuery.atly(“medium”)){
psad_导航显示();
psad_导航按钮。添加类(“隐藏”);
}
}
函数psad_hide_nav(){
if(Foundation.MediaQuery.atly(“medium”)){
psad_导航按钮。移除类(“隐藏”);
psad_nav.hide();
}
}
如果(psad_滚动>=30){
psad_hide_nav();
psad_导航按钮打开({
点击:psad_show_nav,
鼠标指针:psad_show_nav
});
}
如果(psad_滚动<30){
psad_show_nav();
}
});

这对我来说已经完美无瑕了,谢谢你帮了我的忙。这是实现我所追求的目标的最佳方式吗?如果没有,您将如何完成此任务?

谢谢大家的回复,我觉得自己非常聪明!;)哈哈,你必须原谅我,我已经有一段时间没有使用JavaScript了。我也很惊讶它没有在JavaScript控制台中抛出任何错误。我是从一个关于tuts+的教程中获取代码的。我没有发现他们遗漏了变量“scroll”的声明。我修复了这个问题,效果很好,但后来意识到我在jQuery中命名了一个与全局函数同名的变量。我想知道这就是为什么它没有在JavaScript控制台中为未定义的变量抛出错误。最后,为了避免冲突,我还更改了变量名

下面是我最后使用的代码:

jQuery(window).scroll(function() {
    var psad_scroll = jQuery(this).scrollTop();
    var psad_nav = jQuery( ".psad-nav" );
    var psad_nav_button = jQuery( ".psad-nav-button" );

    function psad_show_nav() {
        if (Foundation.MediaQuery.atLeast( "medium" )) {
            psad_nav.show();
            psad_nav_button.addClass( "hide" ) ;
        }
    }

    function psad_hide_nav() {
        if (Foundation.MediaQuery.atLeast( "medium" )) {
            psad_nav_button.removeClass( "hide" );
            psad_nav.hide();
        }
    }

    if (psad_scroll >= 30) {
        psad_hide_nav();
        psad_nav_button.on({
            click: psad_show_nav,
            mouseenter: psad_show_nav
        });

    }
    if (psad_scroll < 30) {
        psad_show_nav();
    }
});
jQuery(窗口)。滚动(函数(){
var psad_scroll=jQuery(this.scrollTop();
var psad_nav=jQuery(“.psad nav”);
var psad_nav_button=jQuery(“.psad nav button”);
功能psad_show_nav(){
if(Foundation.MediaQuery.atly(“medium”)){
psad_导航显示();
psad_导航按钮。添加类(“隐藏”);
}
}
函数psad_hide_nav(){
if(Foundation.MediaQuery.atly(“medium”)){
psad_导航按钮。移除类(“隐藏”);
psad_nav.hide();
}
}
如果(psad_滚动>=30){
psad_hide_nav();
psad_导航按钮打开({
点击:psad_show_nav,
鼠标指针:psad_show_nav
});
}
如果(psad_滚动<30){
psad_show_nav();
}
});

这对我来说已经完美无瑕了,谢谢你帮了我的忙。这是实现我所追求的目标的最佳方式吗?如果没有,您将如何实现这一点?

您应该使用检查高度使用
scrollHeight
ex:
document.body.scrollHeight
@Nathan K感谢您提醒我不要使用全局函数名作为变量名。@scrollTop和scrollHeig这两种方法之间的区别是什么