好的,所以基本上每当有人进入网站时,图标都是相同的颜色(白色)我希望这些代码做以下事情:每当有人去另一个页面时(通过点击其他图标之一)他要去的页面的图标应该有不同的颜色(蓝色,这是通过加载另一个图像来完成的),但只有那个页面,这应该在他刷新页面时保留吗? 这是我对单个图标的当前代码,它还没有工作,我不知道出了什么问题。
<?php Yii::app()->session['/home'] = '1';
$home = Yii::app()->session['/home'];
//echo Yii::app()->session['home']; // Prints "value"
if (!empty($home)){ ?>
<a href="<?php echo $this->createUrl("/admin/survey/sa/index")."/home"; ?>">
<img src='<?php echo $sImageURL;?>home.png' alt='<?php $clang->eT("Default administration page");?>' width='<?php echo $iconsize;?>' height='<?php echo $iconsize;?>'/></a>
<?php
}
else{?>
<a href="<?php echo $this->createUrl("/admin/survey/sa/index")."/home1" ?>">
<img src='<?php echo $sImageURL;?>home1.png' alt='<?php $clang->eT("Default administration page");?>' width='<?php echo $iconsize;?>' height='<?php echo $iconsize;?>'/></a>
<?php
}
?>
答案 0 :(得分:0)
我同意伊沃;我认为使用CSS类最好这样做。您可以让默认的CSS类具有home1.png的背景图像,而蓝色的类具有home.png的背景图像。如果我这样做,我也会使用CSS精灵。
但是,与你所拥有的一起工作。这是Yii中的一种方法:
<?php
// Get the current URI
$currentUri = Yii::app()->request->requestUri;
if($currentUri == '/admin/survey/sa/index'){
?>
<a href="<?php echo $this->createUrl("/admin/survey/sa/index")."/home1" ?>">
<img src='<?php echo $sImageURL;?>home1.png' alt='<?php $clang->eT("Default administration page");?>' width='<?php echo $iconsize;?>' height='<?php echo $iconsize;?>'/>
</a>
<?php
}else{
?>
<a href="<?php echo $this->createUrl("/admin/survey/sa/index")."/home1" ?>">
<img src='<?php echo $sImageURL;?>home1.png' alt='<?php $clang->eT("Default administration page");?>' width='<?php echo $iconsize;?>' height='<?php echo $iconsize;?>'/>
</a>
<?php
}
?>
对于其他图标,您可以重复使用$currentUri
变量。您不需要设置任何会话。刷新页面时,图标仍将保持颜色。