我通过CodeIgniter框架建立了自己的网站,

Here is my personal website

在第一页中,当我单击“ paysage”图片(在右上角)或“ paysage” botton(在菜单中)时,它将转到“ paysage”页面,然后一旦我返回到第一页,我想要的是:“付款”图片保持彩色。

“ area”标签和“ li”标签转到同一页面,“ img”标签是我将彩色图像放在CSS背景网址中的位置。

HTML:

<img id="paysage" alt="page_accueil" src="<?php echo base_url('assets/img/cadre_vide.png') ?>" />

<area alt="paysage" shape="poly" coords="518, 81, 713, 99, 719, 232, 520, 202" href="<?php echo site_url('categories/voir/' . $paysage->id); ?>"/>

<li><a <?php if($this->uri->segment(3) == "1" && $this->uri->segment(1) == "categories"){ ?> class="active" <?php } ?> href="<?php echo site_url('categories/voir/1') ?>">Paysage</a></li>


CSS:

#paysage{
    top:0;
    opacity:0;
    padding:0;
    z-index:-1;
    position:absolute;
    background-repeat:no-repeat;
    background:url('../../assets/img/hover-paysage.png') no-repeat;
    -webkit-background-size: cover; /* pour anciens Chrome et Safari */
    background-size: cover; /* version standardisée */
}


所以我像这样尝试了jQuery

$('area[alt="paysage"]').click(function(){
    $('#paysage').fadeTo('fast', 1);
});


当然这是行不通的,因为单击更改了页面(URL),因此jQuery代码只能在同一页面上执行某些操作。

所以我知道,我需要匹配:
-如果网址已更改,然后返回,
-或点击区域标签(或li标签),
这样我就可以将彩色图像的不透明度设为1。

说的更简单,我想要的是:
“付款”图片保持彩色,一旦单击它并转到其他页面然后返回,它始终保持彩色。

我将在其余的图片中这样做。
我希望这一点很清楚,非常感谢那些可以帮助我的人!

最佳答案

有3个选项。


在服务器端保存某种信息,以了解是否有人单击了它们。 (很可能是不可取的)
在会话中保存数据,以便您可以在站点上的任何地方使用和访问数据。 (比将信息保存在数据库或其他东西中更可取。不过还是在服务器端)
使用JS localStorage。这可能是您想要的那个


使用localStorage,您可以仅使用普通的JS将信息保存在客户端,并检查用户是否单击了图像/按钮,并决定是否使图像保持彩色。

我知道W3Schools是一个不好的资源,但是很关键。 http://www.w3schools.com/html/html5_webstorage.asp

10-07 13:21