张孝祥专栏

目标越来越近,年龄越来越大,身体越来越差,接近目标的速度比不上年龄和身体衰老的速度!做多少算多少,言语修养很重要!...

自己对“用不同颜色显示表格奇偶行的例子”扩充了用不同颜色显示鼠标单击的行

主要是在原来的css基础上增加了一个自定义的RowSelect属性,这个属性通过expression表达式进行设置,我现在的感觉是expression中必须是一个?表达式,在?表达式中才能写我们想要的javascript方法,等以后有时间了再专门来求证这个疑问。如果是我猜想的这样,哪有什么更好的替代方式吗?这种替代方式就是behavior吗?一切都安排在以后清闲了再研究吧!

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>双色表格CSS实例</title>
<style type="text/css">
.test {
   background-color:red;
}
#DataGrid1 tr {
    background-color: expression(
        this.sectionRowIndex == 0 ? "#FFCCCC" :
        (
            (this.sectionRowIndex % 2 == 0) ? "#FFF0F0" : "#F0F0FF"
        )
    );
    color: expression(this.sectionRowIndex == 0 ? "#FFFFFF" : "");
    font-weight: expression(this.sectionRowIndex == 0 ? "BOLD" : "");
    RowSelect: expression(0==1?"":(
   onclick = function()
            {
                   window.currentRow?window.currentRow.style.backgroundColor=(
                    this.style.backgroundColor != "#69cdff" ? "#69cdff" :
                    (
                        this.sectionRowIndex == 0 ? "#FFCCCC" :
                        (
                            this.sectionRowIndex % 2 == 0 ? "#FFF0F0" : "#F0F0FF"
                        )
                    )
                ):"";
               this.style.backgroundColor="#f3c3f3";
               window.currentRow=this;
                window.stopOut=true;
            }
 )
 );

    TableSelect: expression(
        this.sectionRowIndex == 0 ? "" :
        (
            onmouseover = function()
            {
  window.stopOut=false;
                this.style.backgroundColor =
                (
                    this.style.backgroundColor != "#69cdff" ? "#69cdff" :
                    (
                        this.sectionRowIndex == 0 ? "#FFCCCC" :
                        (
                            this.sectionRowIndex % 2 == 0 ? "#FFF0F0" : "#F0F0FF"
                        )
                    )
                )
            },
            onmouseout = function()
            {
  if(window.stopOut) return;
                this.style.backgroundColor =
                (
                    this.style.backgroundColor != "#69cdff" ? "#69cdff" :
                    (
                        this.sectionRowIndex == 0 ? "#FFCCCC" :
                        (
                            this.sectionRowIndex % 2 == 0 ? "#FFF0F0" : "#F0F0FF"
                        )
                    )
                )
            }
        )
    );

}


#DataGrid1 td {
    background-color:expression(
        this.cellIndex == 0 ?
        (
            this.parentElement.sectionRowIndex == 0 ? "#FFCCCC" : "#DDDDDD"
        )
        : null
    )
}
.FindAreaTable1 {
    font-size: 12px;
    color: #333333;
    text-decoration: none;
    width: 400px;
    cursor: hand;
    background-color: #FFFFFF;
    vertical-align: middle;
    text-align: center;
}
</style>
</head>
<body>
<table cellspacing="1" class="FindAreaTable1" ID="DataGrid1">
  <tr>
    <td>首行首列</td>
    <td>首行</td>
    <td>首行</td>
    <td>首行</td>
    <td>首行</td>
    <td>首行</td>
  </tr>
  <tr>
    <td>行1首列</td>
    <td>行1</td>
    <td>行1</td>
    <td>行1</td>
    <td>行1</td>
    <td>行1</td>
  </tr>
  <tr>
    <td>行2首列</td>
    <td>行2</td>
    <td>行2</td>
    <td>行2</td>
    <td>行2</td>
    <td>行2</td>
  </tr>
  <tr>
    <td>行3首列</td>
    <td>行3</td>
    <td>行3</td>
    <td>行3</td>
    <td>行3</td>
    <td>行3</td>
  </tr>
  <tr>
    <td>行4首列</td>
    <td>行4</td>
    <td>行4</td>
    <td>行4</td>
    <td>行4</td>
    <td>行4</td>
  </tr>
  <tr>
    <td>行5首列</td>
    <td>行5</td>
    <td>行5</td>
    <td>行5</td>
    <td>行5</td>
    <td>行5</td>
  </tr>
</table>
</body>
</html>
 

阅读更多
个人分类: css网页设计
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

自己对“用不同颜色显示表格奇偶行的例子”扩充了用不同颜色显示鼠标单击的行

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭