使用cookie显示变量图像

时间:2013-01-18 16:47:33

标签: javascript html cookies image

我正在为一个概念编写代码片段,我希望比我聪明的人可以帮助我为我的目的重新调整一些代码。虽然我非常精通javascript / html,但我在为我的目的转换代码方面相当不错,所以请光临我。

我想要实现的是,我想根据点击到此页面时传递/创建的某个cookie值在网页上显示图像。我正在考虑用onClick动作编写cookie,认为这是最简单的,但我仍然对想法持开放态度。以下是该链接的示例。

a href =" myLink.html" onClick =" setCookie(BRAND,ABC,3600); return true;">

以下是我从网上提取的一些代码,它模仿了我正在寻找的基本方式。我只是不知道如何让页面上的js调用获取cookie值并设置图像。

我提前感谢您的帮助并感谢您的阅读。

<script type="text/javascript">
    var picData = [
        ['ABC','ABC.jpg'],
        ['DEF','DEF.jpg'],
        ['GHI','GHI.jpg']
    ];
    window.onload=function(){
        var cookieValue = 'ABC';  //substitute your code to get the cookie value for this line
        for(i=0; i < picData.length; i++){
            if(cookieValue == picData[i][0]) {
               document.getElementById('imgCont').src = picData[i][1];
               i=picData.length;
            }
        }
    }
</script>

<body>
    <div>
        <img id="imgCont" src="" alt="" />
    </div>
</body>

1 个答案:

答案 0 :(得分:1)

您是否考虑过使用PHP?我觉得这将更加直截了当。使用setcookie然后使用简单的if和elseif语句来检查cookie是什么,并显示相应的图像。

这似乎比你尝试用JavaScript做的简单得多,但也许这只是因为我经常使用PHP ......

所以也许像

$value = "something"; /* sets the value of the cookie */
setcookie("imagedisplay", $value, time()+3600);  /* expire in 1 hour */

在上一页上,然后检查它只是使用:

if($_COOKIE["imagedisplay"] == "something") {
$imageurl="ABC.jpg";
}
elseif($_COOKIE["imagedisplay"] == "something else") {
$imageurl="DEF.jpg";
}
else {
$imageurl="GHI.jpg";
}

然后使用更多PHP输出相应的URL作为图像的源。像

这样的东西
<img src="<? echo $imageurl; ?>" />

尚未测试此代码,但它应该可以正常工作。