Safari中的页面过渡效果?

时间:2008-09-19 13:37:34

标签: safari

如何在Safari中为网页添加IE等页面转换效果?

2 个答案:

答案 0 :(得分:2)

您可以查看此示例:http://sachiniscool.blogspot.com/2006/01/implementing-page-transitions-in.html。它描述了如何使用AJAX和CSS模拟Firefox中的页面转换。同样的方法也适用于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 :(得分:1)

结帐Scriptaculous。如果那就是你所指的,那就避免使用IE-Only JS(不知道你的意思是什么样的效果)。