0

我将这个 SO 代码片段从浏览器剪切并粘贴到我的编辑器 (TextWrangler) 中。当我加载页面时,它给了我一个语法/解析错误(Safari)。

盯着它看了大约 10 分钟后,我手动重新输入了完全相同的代码,它按预期执行,没有任何解析错误。

好奇其他人是否得到相同的结果,我假设一定有一些隐藏字符会弄乱 JavaScript 语法..?有谁知道这些可能是哪些字符(返回?制表符?)以及您如何处理 - 这只是一个编辑器问题吗?通常我可以将浏览器窗口中的代码剪切和粘贴到代码编辑器中。

几个月后,这仍然是一个悬而未决的问题。

类似的事情再次发生,将一些 CSS 剪切并粘贴到 Vim 中:

.quiz-button-go:hover{
    color:#ddffff;
    background:#28e07e;
}

color 属性不起作用(在浏览器中被忽略),但背景确实起作用。但是,如果我删除颜色和换行符之前的空格,那么颜色属性就会起作用!

我发现在 Vim 中你可以使用:set list来显示所有隐藏的字符。这就是我得到的:

44 .quiz-button-go:hover{$
45    $
46 ^Icolor:#ddffff;$
47 ^Ibackground:#28e07e;$                                                                                              
48 }$

没有什么不寻常的,对吧?

此外,如果我尝试cat -vt filename,我会得到:

.quiz-button-go:hover{
^Icolor:#ddffff;
^Ibackground:#28e07e;
}

同样,如果我只是删除“颜色”之前的空白区域,CSS 就可以完美运行。

关于如何查看隐藏字符的任何其他想法将不胜感激......

4

1 回答 1

0

不完全确定,但可能在您复制和粘贴的代码中隐藏了无法识别的符号。它导致了错误。

于 2011-08-08T11:40:07.973 回答