Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Глобальные переменные в Опере, ИЕ, Мозилле 
:(
    Опции темы
DissDoc
Дата 13.4.2008, 19:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 463
Регистрация: 13.7.2006

Репутация: нет
Всего: нет



Воообщем наткнулся на такие грабли. Для начала АБСТРАКТНЫЙ код
Код

var my_var = 0;

function test() {
     function into_test() {
           my_var = 2;
     }
}


В результате 
в Opera - my_var равна 2 (как мне и надо)
в IE - undifined
в Mozilla - undifined

Как сделать так, чтобы работало? Возвращать значение нельзя, поэтому изменять могу только внутри функции.
PM MAIL WWW   Вверх
ksnk
Дата 13.4.2008, 20:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 48
Всего: 386



Какой такой результат? А вот так все нормально...
Код

var my_var = 0;
function test() {
     function into_test() {
           my_var = 2;
     }
    into_test(); // пропущено !!!
}
alert(my_var);
test(); // пропущено!!!
alert(my_var);



--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
DissDoc
Дата 13.4.2008, 21:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 463
Регистрация: 13.7.2006

Репутация: нет
Всего: нет



Не. То что пропущено, это понятно. Я ж написал, что я АБСТРАКТНЫЕ функции написал, понятное дело, что код неполный.
Тут заметил такую особенность, если обновить второй раз браузер, то все нормально работает в IE и Mozilla. Т.е. первый раз загрузил, потом обновил и все заработало.
Осталось понять, как избавиться от такого эффекта )
PM MAIL WWW   Вверх
DissDoc
Дата 14.4.2008, 21:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 463
Регистрация: 13.7.2006

Репутация: нет
Всего: нет



Вот смотрите! Не работает с гуглом функция.

Код

var test = new GPoint(0.0, 0.0);
        
function load() {
    if (GBrowserIsCompatible()) {
                point_array = new Array();
                
                map = new GMap2(document.getElementById("map"));
                map.setCenter(new GLatLng(55.7557, 37.6176), distance);
                
                geocoder = new GClientGeocoder();
                geocoder.getLatLng(
                    "Москва",
                    function(point) {
                        test = point; // вот тут записалась, 
                    }
                    );
                alert(test); /* в Опере отработала нормально, а в IE и Mozilla показывает "0.0, 0.0" Т.е. не могу я в этих браузерах заставить записывать в test значение point */
            }
        }

Что делать?

Это сообщение отредактировал(а) DissDoc - 14.4.2008, 22:00
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0457 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.