Javascript jQuery代码不起作用

Javascript jQuery代码不起作用,javascript,jquery,css,Javascript,Jquery,Css,我打字的时候 $(document).ready(function() { $("#equals").click(function() { $("#water").animate({margin-top: "-200px", opacity: ".65"}, 2000); }); }); 在Dreamweaver中,$(“#水”)行出现错误,不会告诉我是什么。请帮忙 问题是页边空白顶部,它包含一个宣传,并且没有用引号括起来,因此您必须在页面上看到javasc

我打字的时候

$(document).ready(function() {
    $("#equals").click(function() {

        $("#water").animate({margin-top: "-200px", opacity: ".65"}, 2000);

    });
});

在Dreamweaver中,
$(“#水”)
行出现错误,不会告诉我是什么。请帮忙

问题是
页边空白顶部
,它包含一个宣传,并且没有用引号括起来,因此您必须在页面上看到javascript错误。将其更改为
“页边空白顶部”
,希望您表现良好

$("#water").animate({"margin-top": "-200px", opacity: ".65"}, 2000);

关于JavaScript属性以及何时在json对象中省略引号,有一篇很好的文章。看看它

问题是
页边空白顶部
,它包含一个宣传,并且没有用引号括起来,因此您必须在页面上看到javascript错误。将其更改为
“页边空白顶部”
,希望您表现良好

$("#water").animate({"margin-top": "-200px", opacity: ".65"}, 2000);

关于JavaScript属性以及何时在json对象中省略引号,有一篇很好的文章。看一看

我不知道你的错误是什么,但我看到的是无效的JSON

页边距顶部
应在引号中。。。否则它不是有效的json

一个简单的检查是在浏览器的控制台中输入以下内容:

var x = {margin-top: 5};

您将在那里得到一个错误:\

我不知道您的错误是什么,但我看到的是无效的JSON

页边距顶部
应在引号中。。。否则它不是有效的json

一个简单的检查是在浏览器的控制台中输入以下内容:

var x = {margin-top: 5};

您将在那里得到一个错误:\

修复并使JavaScript代码看起来更整洁

  • 属性名中的连字符会混淆编译器,因此请将该属性名用引号括起来
因此,您的代码将变成:

$('#water').animate({'margin-top': '-200px', 'opacity': .65}, 2000);

PS.我删除了最后两条建议。如果您感到好奇,请查看评论。

修复并使您的JavaScript代码看起来更整洁

  • 属性名中的连字符会混淆编译器,因此请将该属性名用引号括起来
因此,您的代码将变成:

$('#water').animate({'margin-top': '-200px', 'opacity': .65}, 2000);


PS.我删除了最后两条建议。如果您感到好奇,请查看评论。

您可以发布相关的HTML吗?一些HTML会很好:)HTML和错误可能有助于我们的初学者,
页边空白顶部
应该在引号中。。。否则它不是一个有效的json。你在添加jquery库吗?你能发布相关的HTML吗?一些HTML会很好:)HTML和错误可能会帮助我们解决初学者的问题,
margin top
应该在引号中。。。否则它不是有效的json。是否要添加jquery库?应该删除第二个要点。作为要设置动画的新特性值传递的任何数字都可以作为数字或字符串交换传递。将其作为字符串传递没有错,也没有任何好处;这一要点纯粹是意见,不是惯例。即使将其标记为“微不足道”的更改也不够。您还应该删除最后一点,因为这也是主观的。是否使用单引号或双引号由开发人员自行决定,两者各有优缺点。开发人员自己的约定决定了他们使用什么,他们自己的风格,他们实现的东西的类型决定了哪些对他们更有利,因此他们应该“通常”使用哪种。@ZacharyKniebel我同意你的观点。然而,最后一个项目只是airbnb建议的编码指南。其主要目的是在将JS字符串与HTML组合时,减少JS字符串与HTML的混淆。然而,这不是一个惯例。你完全正确。我听到你在引用,但仍然…我不会攻击任何人的公司/团队/个人惯例,但仅此而已:本地化惯例。这不像我们所说的为
$(this)
使用变量名
$this
,甚至在包含jQuery对象的任何变量的名称前加上
$
。报价约定仅适用于较小的单位,以便保持一致。这意味着OP公司可能有自己的惯例,也可能根本没有惯例。这是另一个“微不足道”的改变,除非他们自己的习惯需要,否则不应该做出改变。@ZacharyKniebel你的解释非常清楚和直截了当。我喜欢这种人们交换知识和观点的讨论方式。这是建设性的:)你应该删除你的第二个要点。作为要设置动画的新特性值传递的任何数字都可以作为数字或字符串交换传递。将其作为字符串传递没有错,也没有任何好处;这一要点纯粹是意见,不是惯例。即使将其标记为“微不足道”的更改也不够。您还应该删除最后一点,因为这也是主观的。是否使用单引号或双引号由开发人员自行决定,两者各有优缺点。开发人员自己的约定决定了他们使用什么,他们自己的风格,他们实现的东西的类型决定了哪些对他们更有利,因此他们应该“通常”使用哪种。@ZacharyKniebel我同意你的观点。然而,最后一个项目只是airbnb建议的编码指南。其主要目的是在将JS字符串与HTML组合时,减少JS字符串与HTML的混淆。然而,这不是一个惯例。你完全正确。我听到你在引用,但仍然…我不会攻击任何人的公司/团队/个人惯例,但仅此而已:本地化惯例。这不像我们所说的为
$(this)
使用变量名
$this
,甚至在包含jQuery对象的任何变量的名称前加上
$
。报价约定仅适用于较小的单位,以便保持一致。这意味着OP公司可能有自己的惯例,也可能根本没有惯例。这是另一个“微不足道”的改变,除非他们有自己的习惯,否则不应该做出改变