【问题标题】:How can there be 2 lines of code which are exactly the same where one works and one does not?怎么会有两行完全相同的代码,其中一行有效,另一行无效?
【发布时间】:2012-11-02 04:22:18
【问题描述】:

我最近发布了一个关于一段不起作用的 jquery 代码的问题。

Unable to make an element move diagonally with jQuery animate()

我不知道出了什么问题,所以我拿了另一段类似的代码,慢慢地一点一点地修改它,直到它与我应该工作的代码完全相同,而第二个副本工作了,而我的第一个没有.

然后我逐行复制第二个代码并替换第一个代码。

最终它被修复的是什么:

$(this).animate({left:'+=250'}, 1000);

$(this).animate({left:'+=250'}, 1000);

怎么可能第一个没用,第二个没用?

我知道,如果您从某些来源复制引号,例如 ",它们会粘贴一个稍微不同的字符,但不起作用,但我不知道如何解释上述内容。

我并排检查了三次,并开始逐个替换第一个字符以查看罪魁祸首,但我的 Dreamweaver 撞到了我 :(.

那么,有人知道这是怎么回事吗?

【问题讨论】:

  • 我的猜测是 ' 副`
  • 很可能你是从网站上复制的,最后有一个额外的隐藏字符(从 jsfiddle 粘贴到那里时很常见)
  • 检查控制台是否有错误,如果没有任何字符的 'UNEXPECTED TOKEN' 有任何错误,您可能在其中插入了一些不可见的特殊字符。前段时间有同样的问题。
  • jsFiddle 和其他随机的东西在从它们复制/粘贴时会做很多事情!这是@Killah 所说的unexpected token……或者是~tilda 键(`) 上的引用而不是'
  • 很好的答案伙计们!这很有道理。

标签: javascript jquery syntax-error


【解决方案1】:

这是您上一个问题的代码:

$("#moveme").animate({right: '+=50', bottom: '+=50'}, 1000);​​​​​​​​​​​​​​​ 
                        // ----right here------------------^

在该行的末尾,您有大约 15 个左右无效的不可见字符。

当我在 Firefox 中突出显示代码时,我可以看到突出显示的高度就在那里更高。当我进入 "edit" 模式时,需要多次击键才能将光标移过该点。

【讨论】:

  • 哇,好电话。这将有助于我在未来解决杜松子酒的问题。谢谢!
【解决方案2】:

答案中有多余的字符。当粘贴到记事本++中时,这就是我所看到的。

$(document).ready(function(){
    $("#moveme").click(function(event){
        $(this).animate({right: '+=50', bottom: '+=50'}, 1000);??????????????? 
    })
})

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-01-31
    • 2020-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-15
    • 1970-01-01
    相关资源
    最近更新 更多