gpt4 book ai didi

javascript - 背景图像的淡入淡出过渡在所有文本中产生奇怪的白色效果

转载 作者:数据小太阳 更新时间:2023-10-29 05:23:48 25 4
gpt4 key购买 nike

这个问题有点奇怪,

我有一个网站,其中背景图像随着淡入/淡出过渡而变化

视频:http://www.screenr.com/ZCvs

网络在行动:http://toniweb.us/gm

标记:

        <div class="fondo" onclick="descargar(2,500);descargar(1,500);"></div>
<div id="headerimgs">
<div id="headerimg1" class="headerimg"></div>
<div id="headerimg2" class="headerimg"></div>
</div>
<!-- Inicio Cabecera -->

CSS:

.headerimg { 
background-position: center top; background-repeat: no-repeat; width:100%;position:absolute;height:100%;cursor:pointer;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;

}
.headerimg img{
min-width:100%; width:100%; height:100%;
}

.fondo{
position:absolute;
z-index:1;
width:100%;
height:100%;
cursor:pointer;
}

Javascript:

/*Gestion de pase de imágenes de fondo*/
$(document).ready(function() {
/*controla la velocidad de la animación*/
var slideshowSpeed = 3000;
var transitionSpeed = 2000;
var timeoutSpeed = 500;

/*No tocar*/
var interval;
var activeContainer = 1;
var currentImg = 0;
var animating = false;
var navigate = function(direction) {
// Si ya estamos navegando, entonces no hacemos nada!
if(animating) {
return;
}
currentImg++;
if(currentImg == photos.length + 1) {
currentImg = 1;
}
// Tenemos dos, uno en el que tenemos la imagen que se ve y otro d?nde tenemos la imagen siguiente
var currentContainer = activeContainer;
// Esto puedo optimizarlo con la funci?n modulo, y cambiar 1 y 2 por 0 y 1-> active = mod2(active + 1)
if(activeContainer == 1) {
activeContainer = 2;
} else {
activeContainer = 1;
}
// hay que decrementar el ?ndice porque empieza por cero
cargarImagen(photos[currentImg - 1], currentContainer, activeContainer);
};
var currentZindex = -1;
var cargarImagen = function(photoObject, currentContainer, activeContainer) {
animating = true;
// Nos aseguramos que el nuevo contenedor está siempre dentro del cajon
currentZindex--;
//if(currentZindex < 0) currentZindex=1;
// Actualizar la imagen
$("#headerimg" + activeContainer).css({
"background-image" : "url(" + photoObject + ")",
"display" : "block",
"z-index" : currentZindex
});
// FadeOut antigua
// Cuando la transición se ha completado, mostramos el header
$("#headerimg" + currentContainer).fadeOut(transitionSpeed,function() {
setTimeout(function() {
$("#headertxt").css({"display" : "block"});
animating = false;
}, timeoutSpeed);
});
};
//ver la primera
navigate("next");
//iniciar temporizador que mostrará las siguientes



interval = setInterval(function() {
navigate("next");
}, slideshowSpeed);

});

还有一个覆盖 div(类 fondo)(高度和宽度 100%)所以我可以检测何时单击背景(我不能直接使用背景 div,因为过渡使它具有负 z-index)

问题是这种转换在所有白色文本中产生了一种奇怪的效果

知道我错过了什么吗?

最佳答案

我不知道是什么原因导致您的计算机出现故障,我无法重现:我在 Windows 7 上使用 IE7、8、9、最新的 Chrome 和 Firefox 进行了测试。请向我们提供有关您的设置的更多信息。在测试您自己的网站之前,您是否访问过支持 3d 的网站?这似乎是一个图形卡错误。您是否使用了最新的浏览器和显卡驱动程序?

附带说明一下,您可能需要考虑的是让淡入淡出动画更容易:它在初始加载后在 Chrome 中有点卡顿。

可以执行此操作的最简单动画是执行以下代码的 window.setInterval:

function(){
var container = $('#headerimgs');
var current = container.children('div:visible:first');
var next = (current.next().length > 1) ? current.next() : container.children('div:visible');

current.fadeOut(300);
next.fadeIn(300);
}

稍微调整一下持续时间以获得您想要的确切效果。请注意,您需要绝对定位 .headerimg div,以便它们完全重叠。

关于javascript - 背景图像的淡入淡出过渡在所有文本中产生奇怪的白色效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8488364/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com