Эффекты перехода страницы в Safari? - PullRequest
4 голосов
/ 19 сентября 2008

Как добавить эффекты перехода страниц, такие как IE, в Safari для веб-страниц?

Ответы [ 2 ]

2 голосов
/ 19 сентября 2008

Вы можете проверить этот пример: http://sachiniscool.blogspot.com/2006/01/implementing-page-transitions-in.html. Он описывает, как эмулировать переходы страниц в Firefox с использованием AJAX и CSS. Тот же метод работает и в Safari. Код ниже взят с этой страницы и слегка отформатирован:

var xmlhttp;
var timerId = 0;
var op = 1;

function getPageFx() {
  url = "/transpage2.html";
  if (window.XMLHttpRequest) {
    xmlhttp = new XMLHttpRequest()
    xmlhttp.onreadystatechange=xmlhttpChange
    xmlhttp.open("GET",url,true)
    xmlhttp.send(null)
  } else getPageIE();
}

function xmlhttpChange() {
// if xmlhttp shows "loaded"
  if (xmlhttp.readyState == 4) {
  // if "OK"
    if (xmlhttp.status == 200) {
      if (timerId != 0)
        window.clearTimeout(timerId);
        timerId = window.setTimeout("trans();",100);
    } else {
       alert(xmlhttp.status)
    }
  }
}

function trans() {
  op -= .1;
  document.body.style.opacity = op;
  if(op < .4) {
    window.clearTimeout(timerId);
    timerId = 0; document.body.style.opacity = 1;
    document.open();
    document.write(xmlhttp.responseText);
    document.close();
    return;
  }
  timerId = window.setTimeout("trans();",100);
}

function getPageIE() {
  window.location.href = "transpage2.html";
}
1 голос
/ 19 сентября 2008

Проверьте Scriptaculous . Избегайте IE только для IE, если вы на это ссылаетесь (не знаю, какой эффект вы имеете в виду).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...