Javascript 幻灯片定位问题
我有一个javascript幻灯片,可以在Windows7、Firefox、Chrome、IE8+和Opera上完美运行(我没有资源检查6或7)。但有人告诉我,当使用IE 7在xp上运行时,幻灯片会从屏幕右侧弹出。我的问题是什么 这是我的css:Javascript 幻灯片定位问题,javascript,html,css,Javascript,Html,Css,我有一个javascript幻灯片,可以在Windows7、Firefox、Chrome、IE8+和Opera上完美运行(我没有资源检查6或7)。但有人告诉我,当使用IE 7在xp上运行时,幻灯片会从屏幕右侧弹出。我的问题是什么 这是我的css: *#page { width:940px; margin: auto; } #gallery { position:relative; padding:0px; margin:5px 0px; width:940px; height:
*#page {
width:940px;
margin: auto;
}
#gallery {
position:relative;
padding:0px;
margin:5px 0px;
width:940px;
height:320px;
}
#gallery li {
display: block;
width:940px;
height:320
list-style:none;
}*
下面是我的javascript:
*var galleryId = 'gallery';
var gallery;
var galleryImages;
var currentImage;
var previousImage;
var preInitTimer;
preInit();
function preInit() {
if ((document.getElementById)&&(gallery=document.getElementById(galleryId))) {
gallery.style.visibility = "hidden";
if (typeof preInitTimer != 'undefined') clearTimeout(preInitTimer);
} else {
preInitTimer = setTimeout("preInit()",2);
}
}
function fader(imageNumber,opacity) {
var obj=galleryImages[imageNumber];
if (obj.style) {
if (obj.style.MozOpacity!=null) {
obj.style.MozOpacity = (opacity/100) - .001;
} else if (obj.style.opacity!=null) {
obj.style.opacity = (opacity/100) - .001;
} else if (obj.style.filter!=null) {
obj.style.filter = "alpha(opacity="+opacity+")";
}
}
}
function fadeInit() {
if (document.getElementById) {
preInit();
galleryImages = new Array;
var node = gallery.firstChild;
while (node) {
if (node.nodeType==1) {
galleryImages.push(node);
}
node = node.nextSibling;
}
for(i=0;i<galleryImages.length;i++) {
galleryImages[i].style.position='absolute';
galleryImages[i].style.top=0;
galleryImages[i].style.zIndex=0;
fader(i,0);
}
gallery.style.visibility = 'visible';
currentImage=0;
previousImage=galleryImages.length-1;
opacity=100;
fader(currentImage,100);
window.setTimeout("crossfade(100)", 1000);
}
}
function crossfade(opacity) {
if (opacity < 100) {
fader(currentImage,opacity);
opacity += 9;
window.setTimeout("crossfade("+opacity+")", 50);
} else {
fader(previousImage,0);
previousImage=currentImage;
currentImage+=1;
if (currentImage>=galleryImages.length) {
currentImage=0;
}
galleryImages[previousImage].style.zIndex = 0;
galleryImages[currentImage].style.zIndex = 100;
opacity=0;
window.setTimeout("crossfade("+opacity+")", 5000);
}
}
addEvent(window,'load',fadeInit)
function addEvent(elm, evType, fn, useCapture)
{
if (elm.addEventListener){
elm.addEventListener(evType, fn, useCapture);
return true;
} else if (elm.attachEvent){
var r = elm.attachEvent("on"+evType, fn);
return r;
}
} *
*var galleryId='gallery';
var画廊;
var galleryImages;
无功电流图像;
var-previousImage;
var预初始化定时器;
preInit();
函数preInit(){
if((document.getElementById)和&(gallery=document.getElementById(galleryId))){
gallery.style.visibility=“隐藏”;
if(type of preInitTimer!=“undefined”)clearTimeout(preInitTimer);
}否则{
preInitTimer=setTimeout(“preInit()”,2);
}
}
功能音量控制器(图像编号、不透明度){
var obj=GalleryImage[图像编号];
if(对象样式){
如果(obj.style.MozOpacity!=null){
obj.style.MozOpacity=(不透明度/100)-.001;
}else if(obj.style.opacity!=null){
obj.style.opacity=(不透明度/100)-.001;
}else if(obj.style.filter!=null){
obj.style.filter=“alpha(不透明度=“+opacity+”)”;
}
}
}
函数fadeInit(){
if(document.getElementById){
preInit();
GalleryImage=新阵列;
var节点=gallery.firstChild;
while(节点){
if(node.nodeType==1){
GalleryImage.push(节点);
}
node=node.nextSibling;
}
对于(i=0;i=GalleryImage.length){
currentImage=0;
}
GalleryImage[previousImage].style.zIndex=0;
GalleryImage[currentImage].style.zIndex=100;
不透明度=0;
setTimeout(“交叉淡入(“+不透明度+”),5000);
}
}
addEvent(窗口、'load',fadeInit)
函数addEvent(elm、evType、fn、useCapture)
{
if(elm.addEventListener){
elm.addEventListener(evType、fn、useCapture);
返回true;
}else if(elm.attachEvent){
var r=elm.attachEvent(“on”+evType,fn);
返回r;
}
} *
想法呢?我不知道这是否真的有用,甚至不知道这是否是错误的,但可能会将页面更改为页边空白:0自动;而不是保证金:自动 请修复你的代码粘贴,因为测试IE版本5.5-8是很难做到的<代码>http://www.my-debugbar.com/wiki/IETester/HomePage