当前位置:编程学习 > asp >>

ASP.NET中利用DataList实现图片无缝滚动

这个问题之前也困扰我,后来解决了,拿出来分享下,以后用也方便,代码很容易看懂,不多说什么了
[html]
<div id="demo" style="overflow: hidden; width: 441px; border: 0px"> 
        <table width="441" height="130" border="0" cellpadding="0" cellspacing="0" background="Images/img2/32.jpg"> 
            <tr> 
                <td align="center" id="demo1" valign="bottom"> 
                    <asp:DataList ID="DataList1" runat="server" RepeatDirection="Horizontal" DataSourceID="ObjectDataSource1"> 
                        <ItemTemplate> 
                            <table> 
                                <tr> 
                                    <td> 
                                        <asp:ImageButton ID="imgbtnInfo" runat="server" ImageUrl='<%#Eval("Spic") %>' OnClick="imgbtnInfo_Click" 
                                            CommandArgument='<%#Eval("ID") %>' /> 
                                    </td> 
                                </tr> 
                                <tr> 
                                    <td align="center"> 
                                        <asp:LinkButton ID="lkbtnInfo" CommandArgument='<%#Eval("ID") %>' runat="server" 
                                            OnClick="lkbtnInfo_Click" CssClass="bb" Text='<%#Eval("Type") %>'></asp:LinkButton> 
                                    </td> 
                                </tr> 
                            </table> 
                        </ItemTemplate> 
                    </asp:DataList> 
                    <asp:ObjectDataSource ID="ObjectDataSource1" runat="server" SelectMethod="SelectInfo" 
                        TypeName="HotelDAL.KeFangServices"></asp:ObjectDataSource> 
                </td> 
                <%-- 这一步很重要 --%> 
                <td id="demo2" align="center" valign="bottom"> 
                </td> 
            </tr> 
        </table> 
    </div> 
    <script> 
        //滚动的速度,数值越大速度越慢 
        var speed = 20 
        demo2.innerHTML = demo1.innerHTML 
        //从右至左  
        function Marquee() { 
            if (demo1.offsetWidth - demo.scrollLeft <= 0) 
                demo.scrollLeft = 0 
            else 
                demo.scrollLeft++ 
        }  www.zzzyk.com
        var MyMar = setInterval(Marquee, speed) 
        demo.onmouseover = function () { clearInterval(MyMar) } 
        demo.onmouseout = function () { MyMar = setInterval(Marquee, speed) }  
    </script> 
补充:Web开发 , ASP.Net ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,