0

大家好,感谢您提供帮助。

我有一个带有固定 y 标头的 ListView。我的 ListView 的标题实际上是另一个格式化为适合 ListView 列的表格。我有一个 JScrollPane 和一个 javascript,以便在 X 轴上滚动时将标题固定在顶部并使其与 ListView 列对齐。

一切都好。除了我开始从左到右滚动的部分之外,标题背景颜色为绿色(如在 css 文件中编程的那样)仅用于表格的可见部分,这意味着只要我向右滚动即可查看剩余部分列我可以注意到标题表不再着色,它是透明的。

在我滚动之前

在我滚动之后

这是我的CSS:

  .listeResultat
    {
  max-height: 800px;
  height: 800px;
  overflow:hidden ;
  border: 1px solid black;
  background: #F3F6FA;
    }      


  #parentFixed
 {

       height:800px;
        background-color:#cccccc;
        overflow:auto;
  }

 .headerFixed{

    color:White;
      background-color:green;
    font-size:20px;
       position:static;
     z-index:222;
   }

 .headerFixed table td{
  border: 1px solid #000000 ; 
   min-width: 150px;

  }

  .wrapperfixed{

 height:600px;
 font-size:20px;
 }

/*Celui la ici si on voulais un header fixe vertical aligné a gauche*/
.wrapperfixed .lefter{
 float:left;
width:100px;
height:800px;
background-color:red;
position:relative;
}

.wrapperfixed .content{
 float:left;
 }

 .wrapperfixed .content table td{

 border: 1px solid #000000 ; 
 min-width : 150px;
 }

.wrapperfixed .content table th{

 border: 1px solid #000000 ; 
min-width: 150px;
 }

这是我的带有脚本和所有内容的asp页面

      <div class="listeResultat">
        <!--début tableau des résultats-->

      <div id="parentFixed">
        <div class="headerFixed">
        <table id="tableHeader">
             <tr>
            <td><asp:LinkButton ID="Q" runat="server"><%= getCellText("Q")%></asp:LinkButton></td>
            <td> <asp:LinkButton ID="W" runat="server"><%= getCellText("W")%></asp:LinkButton></td>
            <td> <asp:LinkButton ID="E" runat="server"><%= getCellText("E")%></asp:LinkButton></td>
            <td> <asp:LinkButton ID="R" runat="server"><%= getCellText("R")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="T" runat="server"><%= getCellText("T")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="Y" runat="server"><%= getCellText("Y")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="U" runat="server"><%= getCellText("U")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="I" runat="server"><%= getCellText("I")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="O" runat="server"><%= getCellText("O")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="P" runat="server"><%= getCellText("P")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="S" runat="server"><%= getCellText("S")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="L4" runat="server"><%= getCellText("L4")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="L5" runat="server"><%= getCellText("L5")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="A" runat="server"><%= getCellText("A")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="D" runat="server"><%= getCellText("D")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="F" runat="server"><%= getCellText("F")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="G" runat="server"><%= getCellText("G")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="H" runat="server"><%= getCellText("H")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="J" runat="server"><%= getCellText("J")%></asp:LinkButton></td>
            <td> <asp:LinkButton ID="K" runat="server"><%= getCellText("K")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="L" runat="server"><%= getCellText("L")%></asp:LinkButton></td>
            <td> <asp:LinkButton ID="Z" runat="server"><%= getCellText("Z")%></asp:LinkButton></td>
            <td> <asp:LinkButton ID="X" runat="server"><%= getCellText("X")%></asp:LinkButton></td>
            <td> <asp:LinkButton ID="C" runat="server"><%= getCellText("C")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="V" runat="server"><%= getCellText("V")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="B" runat="server"><%= getCellText("B")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="N" runat="server"><%= getCellText("N")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="M" runat="server"><%= getCellText("M")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="QQ" runat="server"><%= getCellText("QQ")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="QW" runat="server"><%= getCellText("QW")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="QL" runat="server"><%= getCellText("QL")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="QE" runat="server"><%= getCellText("QE")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="QR" runat="server"><%= getCellText("QR")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="QT" runat="server"><%= getCellText("QT")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="QY" runat="server"><%= getCellText("QY")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="QU" runat="server"><%= getCellText("QU")%></asp:LinkButton></td>
            <td><asp:LinkButton ID="COM" runat="server"><%= getCellText("COM")%></asp:LinkButton></td>
             </tr>
         </table>
        </div><%--FIN HEADER FIXED--%>
   <%--Wrapper FIXED--%>
<div class="wrapperfixed">
<div class="content"><%--Content FIXED--%>

<table>

         <asp:ListView ID="ListView1" runat="server" EnableEventValidation="true">

            <ItemTemplate>

                <tr style="background-color: <%# BgColor(Eval("A"))%>">
                    <td  width="106px">
                        <asp:Label runat="server" ID="lb_LB1"><a href="Desk.aspx?id=<%# Eval("Q")%>"><%# Eval("Q")%></a></asp:Label>
                    </td>
                    <td  width="106px">
                        <asp:Label runat="server" ID="lb_LB2"><a href="Desk.aspx?id=<%# Eval("Q")%>"><%# Eval("W")%></A></asp:Label>
                    </td>
                    <td  width="106px">
                        <asp:Label runat="server" ID="lb_LB3"><%# Eval("E")%></asp:Label></td>
                    <td  width="106px">
                        <asp:Label runat="server" ID="lb_LB4"><%# Eval("R")%></asp:Label></td>
                    <td  width="106px">
                        <asp:Label runat="server" ID="lb_LB5"><%# Eval("T")%></asp:Label></td>
                    <td  width="106px">
                        <asp:Label runat="server" ID="lb_LB6"><%# Eval("Y")%></asp:Label></td>
                     <td  width="106px">
                        <asp:Label runat="server" ID="lb_LB7"><%# Eval("U")%></asp:Label></td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB8"><%# Eval("I")%></asp:Label></td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB9"><%# Eval("O")%></asp:Label></td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB10"><%# Eval("P")%></asp:Label></td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB12"><%# Eval("S")%></asp:Label></td>
                     <td>
                        <asp:Label runat="server" ID="Label4"><%# Eval("L4")%></asp:Label></td>
                     <td>
                        <asp:Label runat="server" ID="Label5"><%# Eval("L5")%></asp:Label></td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB11"><a href="Reservation.aspx?<%# getLink(Eval("A"), Eval("Q") , Eval("F"))%>"><%# Eval("A")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB13"><%# Eval("D")%></asp:Label></td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB14"><%# Eval("F")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB15"><%# Eval("G")%></asp:Label></td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB16"><%# Eval("H")%></asp:Label></td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB17"><%# Eval("J")%></asp:Label></td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB18"><%# Eval("K")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB19"><%# Eval("L")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB20"><%# Eval("Z")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB21"><%# Eval("X")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB22"><%# Eval("C")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB23"><%# Eval("V")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB24"><a href="Employee.aspx?id=<%# Eval("L")%>"><%# Eval("B")%></a></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB25"><a href="Employee.aspx?id=<%# Eval("L")%>"><%# Eval("N")%></a></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB26"><%# Eval("M")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB27"><%# Eval("QQ")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB28"><%# Eval("QW")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB29"><%# Eval("QL")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB30"><%# Eval("QE")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB31"><%# Eval("QR")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB32"><%# Eval("QT")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB33"><%# Eval("QY")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB34"><%# Eval("QU")%></asp:Label>
                    </td>
                     <td>
                        <asp:Label runat="server" ID="lb_LB35"><%# Eval("COM")%></asp:Label><%--Comments--%>
                    </td>
                </tr>

            </ItemTemplate>

            <AlternatingItemTemplate>

                <tr style="background-color: <%# BgColor(Eval("A"))%>">
                    <td  style="width:106px;">
                        <asp:Label runat="server" ID="lb_LB1"><a href="Desk.aspx?id=<%# Eval("Q")%>"><%# Eval("Q")%></A></asp:Label>
                    </td>
                    <td  style="width:106px;">
                        <asp:Label runat="server" ID="lb_LB2"><a href="Desk.aspx?id=<%# Eval("Q")%>"><%# Eval("W")%></A></asp:Label>
                    </td>
                    <td  style="width:106px;">
                        <asp:Label runat="server" ID="lb_LB3"><%# Eval("E")%></asp:Label>
                    </td>
                    <td  style="width:106px;">
                        <asp:Label runat="server" ID="lb_LB4"><%# Eval("R")%></asp:Label>
                    </td>
                    <td  style="width:106px;">
                        <asp:Label runat="server" ID="lb_LB5"><%# Eval("T")%></asp:Label>
                    </td>
                    <td  style="width:106px;">
                        <asp:Label runat="server" ID="lb_LB6"><%# Eval("Y")%></asp:Label>
                    </td>
                    <td  style="width:106px;">
                        <asp:Label runat="server" ID="lb_LB7"><%# Eval("U")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB8"><%# Eval("I")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB9"><%# Eval("O")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB10"><%# Eval("P")%></asp:Label>
                    </td>
                    <%--<td><asp:Label runat="server" ID="Label1"><a href="Reservation.aspx?deskId=<%# Eval("Q")%>"><%# Eval("A")%></a></asp:Label></td>--%>

                    <td>
                        <asp:Label runat="server" ID="lb_LB12"><%# Eval("S")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="Label6"><%# Eval("L4")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="Label7"><%# Eval("L5")%></asp:Label>
                    </td>
                      <td>
                        <asp:Label runat="server" ID="lb_LB11"><a href="Reservation.aspx?<%# getLink(Eval("A"), Eval("Q") , Eval("F"))%>"><%# Eval("A")%></a></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB13"><%# Eval("D")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB14"><%# Eval("F")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB15"><%# Eval("G")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB16"><%# Eval("H")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB17"><%# Eval("J")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB18"><%# Eval("K")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB19"><%# Eval("L")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB20"><%# Eval("Z")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB21"><%# Eval("X")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB22"><%# Eval("C")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB23"><%# Eval("V")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB24"><a href="Employee.aspx?id=<%# Eval("L")%>"><%# Eval("B")%></a></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB25"><a href="Employee.aspx?id=<%# Eval("L")%>"><%# Eval("N")%></a></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB26"><%# Eval("M")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB27"><%# Eval("QQ")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB28"><%# Eval("QW")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB29"><%# Eval("QL")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB30"><%# Eval("QE")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB31"><%# Eval("QR")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB32"><%# Eval("QT")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB33"><%# Eval("QY")%></asp:Label>
                    </td>
                    <td>
                        <asp:Label runat="server" ID="lb_LB34"><%# Eval("QU")%></asp:Label>
                    </td>
                        <td>
                        <asp:Label runat="server" ID="lb_LB35"><%# Eval("COM")%>   </asp:Label><%--Comments--%>
                    </td>
                </tr>

             </AlternatingItemTemplate>
         </asp:ListView>

 </table>

</div><%--FIN CONTENT FIXED--%>
 </div><%--FIN WRAPPER FIXED--%>
 <div class="scrollarea"></div><%--Pour activer le javascript du jscrollpane--%>
 </div><%--Fin ParentFixed--%>

<br/><br/>



   <!-- styles pour le jScrollPane -->
  <link type="text/css" href="Styles/jquery.jscrollpane.css" rel="stylesheet" media="all" />

  <!-- jQuery direct de google -->
  <script type="text/javascript"     src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
  </script>

 <!-- the mousewheel plugin - optional to provide mousewheel support -->
  <script type="text/javascript" src="Scripts/jquery.mousewheel.js"></script>

 <!-- the jScrollPane script -->
  <script type="text/javascript" src="Scripts/jquery.jscrollpane.min.js"></script>

  <%--Script qui ajoute un event lors de l'utilisation des scrollbar--%>
  <script type="text/javascript">
    $(document).ready(function () {
       $('#parentFixed')
        .bind('jsp-scroll-y',
            function (event, scrollPositionY, isAtTop, isAtBottom) {
                $(".headerFixed").css("top", scrollPositionY);
            }
         )
        .bind('jsp-scroll-x',
            function (event, scrollPositionX, isAtLeft, isAtRight) {
                $(".lefter").css("left", scrollPositionX);
            }
    )
    .jScrollPane();
  });
   // alert('I was invoked at the end of the script'); //test pour voir si le scripte   roule
</script>


    </div><%--FIN Div listeResultats--%>
   <%--FIN PANEL DE LA LISTE DES RESULTATS--%>
4

1 回答 1

0

我又一次自己找到了答案。我必须告诉我的 jquery 脚本,每次向右或向左滚动都用于绘制表格背景

这将是需要的行

 $('#tableHeader').css('background-color', '#556d80');

这是整个脚本

   <script type="text/javascript">
    $(document).ready(function () {

    $('#parentFixed')
        .bind('jsp-scroll-y',
            function (event, scrollPositionY, isAtTop, isAtBottom) {
                $(".headerFixed").css("top", scrollPositionY);
            }
         )
        .bind('jsp-scroll-x',
            function (event, scrollPositionX, isAtLeft, isAtRight) {
                $(".lefter").css("left", scrollPositionX);
                // $('#tableHeader').css('background-color', '#556d80');
                $('#tableHeader').css({ 'background-image':  'url(Styles/grd_head.png)' });
            }
    )
   .jScrollPane();
 });
   // alert('I was invoked at the end of the script'); //TRACE

于 2013-10-08T18:39:12.870 回答