2012-11-18 48 views
0

我一直在研究如何在刷新时交换两个图像或div。我发现了几个来源,但没有做到我想让他们做的事。下面是我想要我的工作:在刷新时交换两个不同的图像/ div

我有两个div与图像在他们。一格在另一格之上。顶部div将显示一个图像,底部div将显示不同的图像。我希望每次刷新或重新访问该页面时,图像或div切换,无论哪个更有意义。

下面是广告(这是在我的边栏),我简单的CSS代码:

#sidebar {float:left; width:300px; min-height:400px; } 

#sidebarhomenewsad1 { width:290px; height:580px; margin-bottom:10px; } 

#sidebarhomenewsad2 { width:290px; height:580px; margin-bottom:10px; } 

我做了两个div的完全一样,只是叫法不同,因为我不知道,如果对图像交换刷新将需要两个不同的div或不需要。要回顾一下,我希望两个不同的图像(一个在下面,一个在上面)在刷新/重新访问页面时相互切换/交换。

任何帮助将不胜感激! :)

+0

你必须保存什么样的形象访问者看到的第一时间,以确保他们得到下一次的其他图像。 – 2012-11-18 20:04:41

回答

0

你可以使用cookies。在第一次访问时,如果没有设置cookie(例如'upper_div_num'),则应该将第一个div显示为upper,并将cookie值设置为1.下次,您应该检查'upper_div_num'Cookie,如果它设置为2 1,如果它是2或未设置,则将其设置为1。 PHP或Javascript代码应检查此cookie值并相应地定位div。

+0

谢谢你。我真的不知道如何将这些理论/代码结构应用于纸张。我不太擅长PHP或JS。如果你能够在心中找到善意,想出一些符合我在OP中所说的编码,那就太棒了!不幸的是,这些人的第一个答案没有奏效:( – user1658560

0

用途jQuery.cookie()

HTML

<img class="a" src="http://i.imgur.com/dCabSb.jpg" /> 
<img class="b" src="http://i.imgur.com/ZUTsGb.jpg" />​ 

JS

if (!$.cookie('currentImage')) { 
    $.cookie('currentImage', '1') 
} else { 
    if ($.cookie('currentImage') == '1') { 

     tmp = $('.a').attr('src'); 
     $('.a').attr('src', $('.b').attr('src')); 
     $('.b').attr('src', tmp); 

     $.cookie('currentImage', '2') 
    } else { 
     $.cookie('currentImage', '1') 
    } 
}​ 

小提琴 - http://jsfiddle.net/mrYaA/

+0

在你的小提琴中,图像无法开启刷新功能,我也尝试在自己的网站上使用你的代码,图像仍然没有切换:(我在谷歌浏览器和Mozilla Firefox浏览器上测试了这个功能) – user1658560

+0

按下运行按钮? –

+0

是的,图像保留在左侧,图像b保持在右侧,它们不会切换:( – user1658560