Различное поведение Javascript в зависимости от того, наберу я его сам или скопирую - PullRequest
1 голос
/ 08 сентября 2010

Я получаю другое поведение в своем Javascript в зависимости от того, пишу ли я его или копирую, вставляю сам из уже существующего кода или копирую, вставляю его из Интернета

Этот EXACT-код дает разные результаты в зависимости от того,верхние два или два нижних активны:

var tt = 5;
alert(tt);
//CODE;
//CODE;
//var tt = 5;
//CODE;
//alert(tt);

Это приводит к ошибке 'tt не определено'

//var tt = 5;
//alert(tt);
//CODE;
//CODE;
var tt = 5;
//CODE;
alert(tt);

Это выдает окно предупреждения с 5. Я перезапустил браузермежду каждым разом я получал один и тот же результат много раз.Я также попытался смешать с наличием пробела между ними или нет, но каким-то образом он узнал, что было написано как.

Верхняя часть написана мной в Notepad ++, две нижние копии вставлены из фрагмента кода на этом сайте.

Я использую Notepad ++, а браузерами были IE6 и IE5.5.

Не очень логично ...


Хорошо, IE6 и IE5.5 выглядят ОЧЕНЬпридирчивы, когда речь идет о том, где именно находится код.В некоторых местах код читается и выполняется, в других - нет, и он очень систематический, когда вы видите шаблон, который подтверждается при каждой попытке.

Это, например:

//Från början är opacity'n 100 eftersom jag inte vet om Javascript är påsatt eller inte och därmed inte vet om PNG'arna kommer att
//bli genomskinliga eller ej. Är Javascript på så gör jag också bakgrunden genomskinlig så att PNG'arnas genomskinlighet inte blir i onödan
//If-satsen eftersom transparency ej existerar på första-sidan och därigenom ger fel där

if(document.getElementById('transparency') != null)document.getElementById('transparency').style.filter= "alpha(opacity=60)";

Если код помещается на одну строку вверх, ничего не происходит (без ошибок, но и ничего не выполняется), но размещение его там и одна строка ниже всегда приводит к успеху, тогда как одна строка выше ВСЕГДА приводит к тому, что фон не изменяется ....

1 Ответ

0 голосов
/ 12 марта 2013

Это может быть вызвано полу-невидимыми символами, такими как табуляция или пробел и много символов Юникода.Я часто копирую и вставляю через обычный старый notepad.exe, чтобы удалить самые плохие виды.

Так как вы редактируете из Notepad ++, подумайте, в какой кодировке вы открываете / сохраняете файл!(см. меню «Кодировка» в верхней части окна). Для меня это либо UTF8, либо ANSI.

Хотя в вашем комментарии это не должен быть å Unicode, но никогда не говори никогда, некоторые годыв некоторых браузерах может быть ошибка ..

...