Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.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美元符号变量不工作_Javascript_Jquery_Html_Wordpress_Dom - Fatal编程技术网

javascript美元符号变量不工作

javascript美元符号变量不工作,javascript,jquery,html,wordpress,dom,Javascript,Jquery,Html,Wordpress,Dom,我的Wordpress中有以下代码: (function ($) { var $header = $("div.header"); $(window).bind("scroll resize", function () { if ($(window).scrollTop() > 30) { $("div.header").stop().animate({ 'opacity': 0.24 }, { duration:

我的Wordpress中有以下代码:

(function ($) {
  var $header = $("div.header");

  $(window).bind("scroll resize", function () {
    if ($(window).scrollTop() > 30) {
      $("div.header").stop().animate({
        'opacity': 0.24
      }, {
        duration: 1000
      });
    } else {
      $header.stop().animate({
        'opacity': 1
      }, {
        duration: 1000
      });
    }
  });
})(jQuery);
如果语句在假设的时候起作用,但从没有

但是

如果我附上:

jQuery(document).ready(function($) {        
  // code here
});
一切都好。为什么?


谢谢

可能是您试图在dom未生成时使用jQuery。尝试使用
$(文档)。就绪
功能:

(function ($) {
  $(document).ready(function () {
    $header = $("div.header");
    $header.remove();
  });
})(jQuery);
关于你在问题中所说的:

jQuery(document).ready(function ($) {
  // code
});
它之所以有效,是因为它做了同样的事情:它将事件处理程序绑定到
ready
事件上,并将
jQuery
对象作为参数传递给函数
$

现在你以前做过什么:

(function ($) {
  $header = $("div.header");
  $header.remove();
})(jQuery);
在这里,您只需使用命名的
$
参数声明匿名函数:

function ($) {
}
并使用
jQuery
对象作为参数调用它,该参数将作为
$
函数提供:

(function ($) {
})(jQuery);

javascript错误是什么?或者提供包含错误的wordpress url,以便我们能够正确回答。“为什么不起作用?”“这不是我熟悉的错误消息。@ExplosionPills:这就像“天空是蓝色的”、“水是湿的”、“重力是一种消沉剂”和“摩擦是一种阻力”。没错,但没用。我刚刚编辑了我的代码。希望现在一切都不神秘了。我没有在Chrome中报告任何JS错误。正如其他人所指出的,在一种情况下(
$header=..
),DOM在准备好之前就已经被访问了(通过jQuery元素选择器)。。这上面有很多复制品。事件在DOM准备就绪后的某个时间激发。