在每个页面加载时显示随机DIV(对于fancybox模式)

时间:2013-11-18 11:31:06

标签: javascript php jquery html random

当访客离开网站时,我正在显示一个fancybox模式窗口。它工作正常。但作为分裂测试,我希望在随后的访问中向访问者显示来自2个不同div的随机内容。

含义:

1)当访客1来并试图离开网站时,他可能会看到内容为1或2的fancybox

2)当访客2来到并试图离开网站时,他可能会再次看到内容为1或2的fancybox

等等......

fancybox模式的实际代码是:

<div id="inline" class="various2" style="display:none;">
      <div style="padding:20px;">
             This is the content of that shows inside the fancybox modal.
       </div>
</div>

现在对于内部div,我想要添加另一个具有不同内容的div,其中一个应该在每个页面加载时随机显示,而另一个则显示:none ...

我试过这个:How to show one div of many, per page refresh? 但它不起作用,并显示两个div可见......

有人可以帮忙吗?

编辑:原来的问题已经回答了。现在,如何在每个页面加载时显示备用div。不是随意的。访客1,2,3,4之类的东西分别见1,2,3,4。

我知道这需要一些服务器端代码,任何人都可以帮助一些基本的PHP代码吗?

2 个答案:

答案 0 :(得分:4)

由于某种原因,我更喜欢时间戳而不是随机

HTML

<div id-="fancy_box">
    <div id="inline" class="various1" style="display:none;">
        <div style="padding:20px;">
             This is the content of that shows inside the fancybox modal 1.
       </div>
    </div>
    <div id="inline" class="various2" style="display:none;">
        <div style="padding:20px;">
             This is the content of that shows inside the fancybox modal 2.
       </div>
    </div>
</div>

JQuery的

$(function(){
    $(".various"+(new Date().getTime() % 2 +1)).css("display", "block");
});

哦和fiddle is here

答案 1 :(得分:2)

检查这个小提琴。 为了查看结果,我删除了id为内联的div上的display:none

http://jsfiddle.net/bPK8y/

var value1 = 'my_first_div';
var value2 = 'my_second_div';
var chosenValue = Math.random() < 0.5 ? value1 : value2;
var chosenDiv = document.getElementById(chosenValue);
chosenDiv.style.display = "block";

HTML

<div id="inline" class="various2">
  <div style="padding:20px; display: none;" id="my_first_div">
      This is the content of that shows inside the fancybox modal. CONTENT 1
  </div>
  <div style="padding:20px; display: none;" id="my_second_div">
      This is the content of that shows inside the fancybox modal. CONTENT 2
  </div>
</div>