Javascript Yii:会话脚本



好了,所以基本上每当有人进入网站的图标都是相同的颜色(白色)我希望这段代码做下面的事情:每当有人进入另一个页面(通过点击其他图标之一),他要去的页面的图标应该有一个不同的颜色(蓝色,这是通过加载另一个图像完成的),但只有那个页面,这也应该保持当他刷新页面?这是当前的代码,我有一个单一的图标,它还没有工作,我不知道什么是错的..

<?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
    }
    ?>   

我同意Ivo的观点;我认为最好使用CSS类来实现这一点。默认的CSS类的背景图像为home.png,蓝色的CSS类的背景图像为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变量。你不需要设置任何会话。当您刷新页面时,图标仍将保持颜色。

最新更新