Показать сообщение отдельно
  #1 (permalink)  
Старый 05.11.2009, 08:10
Профессор
Отправить личное сообщение для Andrei Посмотреть профиль Найти все сообщения от Andrei
 
Регистрация: 31.10.2009
Сообщений: 151

Проблема кроссбраузерности кода ?
Добрый день ! Проблема в следующем в опере он работает прекрасно, а в фаерфокс не падаёт никаких признаков жизни !
Просматривал код через fierbug показывает что ошибка в строчки с:

var frameDocument = frame.contentDocument || frame.contentWindow.document;

Вот весь код:

var frame = parent.document.getElementsByTagName("frame")[1];
var frameDocument = frame.contentDocument || frame.contentWindow.document;


var n = 1;
var s = 0;

alpha_page = Number(0);//начальная прозрачность
alpha_speed = Number(0.05);//скорость увеличения прозрачности

x_pos = Number(70);//начальное положения контента
x_speed = Number(4);//скорость движения контента

page = Number(1);
mes_er = String("Эта страница уже открыта, пожалуйста выбирите другую!");

function button(){
    document.getElementById('but_1').onclick = function(){if(page == 1){alert(mes_er);}else{;page = 1;next_page();}};
    document.getElementById('but_2').onclick = function(){if(page == 2){alert(mes_er);}else{;page = 2;next_page();}};
    document.getElementById('but_3').onclick = function(){if(page == 3){alert(mes_er);}else{;page = 3;next_page();}};
    document.getElementById('but_4').onclick = function(){if(page == 4){alert(mes_er);}else{;page = 4;next_page();}};
}


frame.onload = function() {//выполняем функцию после того как загрузиться страница
       
 n = 1;
    x_pos = 70;
    s = 0;
    open_page();
    button();
}


function next_page(){//выполняем функцию после нажатия на кнопку 
    n = 1;
    s = 1;
    open_page();
}


function open_page(){

    if (s == 0){//если страница закрыта то =>
         if (x_pos>24){
              frameDocument.getElementsByTagName('DIV')[0].style.left = x_pos;
              x_pos -= x_speed;
         }

         if (alpha_page<1){
              frameDocument.getElementsByTagName('DIV')[0].style.opacity = alpha_page;
              alpha_page+=alpha_speed;
         }else{
              n = 99;
         }
    
       
   }else if (s == 1){
         if (alpha_page>0){
              frameDocument.getElementsByTagName('DIV')[0].style.opacity = alpha_page;
              alpha_page-=alpha_speed;
         }else{
              n = 99;
              if (page == 1){
                   frame.src = "home.html"
              }else if (page == 2){
                   frame.src = "portfolio.html"
              }else if (page == 3){
                   frame.src = "services.html"
              }else if (page == 4){
                   frame.src = "contacts.html"
              }else{
                   alert("error");
              }
         }
    } 
     
    if (n < 99){
         n++; 
         setTimeout(open_page, 20);
    } 
}

Подскажите как исправить ошибку !?
Ответить с цитированием