javascript - 带有四个淡入淡出图像的幻灯片无法更改 div 的位置

标签 javascript jquery css

我有一个名为“背景”的 div,其中有 4 张图像 (400x300px),每 x 秒连续淡入淡出。此代码在浏览器的左上角显示图像。我想要的是将它移动到另一个地方,在一个容器内,但我不能。我尝试通过将位置更改为“相对”并使用“边距”,div“背景移动到我设置的任何位置,但淡入淡出图像保留在左上角。 您可以在下面看到代码。有什么想法吗?

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Image Change</title>
<style type="text/css">
div.background {
position:relative;
width:500px;
height:500px;
margin-left:50px;
margin-top:50px;
background:red;
z-index:-1;}

div.background img {
position:fixed;
list-style: none;
left:0px;
top:0px;}

div.background ul li.show {
z-index:500}

div.background {    position:absolute;  left:0px;   top:0px;    z-index:-1;}div.background img {       position:fixed;  list-style: none;   left:0px;   top:0px;}div.background ul li.show {    z-index:500}
</style>

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
<script type="text/javascript">
function thebackground() {
$('div.background img').css({opacity: 0.0});
$('div.background img:first').css({opacity: 1.0});
setInterval('change()',4000);
}
function change() {
var current = ($('div.background img.show')? $('div.background img.show') : $('div.background img:first'));
if ( current.length == 0 ) current = $('div.background img:first');
var next = ((current.next().length) ? ((current.next().hasClass('show')) ? $('div.background img:first')    :current.next()) : $('div.background img:first'));
next.css({opacity: 0.0})
.addClass('show')
.animate({opacity: 1.0}, 1000);
current.animate({opacity: 0.0}, 1000)
.removeClass('show');
};
$(document).ready(function() {
thebackground();
$('div.background').fadeIn(1000); // works for all the browsers other than IE
$('div.background img').fadeIn(1000); // IE tweak
});
</script>


</head>

<body>
<div class="background">
<img src="images/image1.jpg"  />
<img src="images/image2.jpg"  />
<img src="images/image3.jpg"  />
<img src="images/image4.jpg"  />

</div>
</body>
</html>

最佳答案

这是您的预期结果吗?

http://jsfiddle.net/wH7zN/

在这种情况下,尝试将 CSS 更改为 position: relativeposition: absolute:

div.background {position:relative; left:0px; top:0px; z-index:-1;}
div.background img {position:absolute; left:0px; top:0px;}

还更改了这一行:

setInterval('change()',4000);

setInterval(change(),4000);

关于javascript - 带有四个淡入淡出图像的幻灯片无法更改 div 的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20690434/

相关文章:

javascript - jquery 函数内部 html href 代码无法正常工作

html - DIV 位置?结盟

javascript - 无论以前用于绑定(bind)它的库如何覆盖 JavaScript 中的事件?

javascript - 如何找出脚本加载两次的位置?

javascript - 获取父类并在jquery中触发

Jquery 不区分大小写的选择

javascript - 没有requirejs如何使用redux?

javascript - Bootstrap nav-tabs 'show' 不起作用?

php - 从非公共(public)目录加载 css 或 javascript

javascript - 默认隐藏子菜单,如果事件则显示