http://event.starswok.com/movie/lastchanceharvey/album.aspx

這頁的效果就是我用AjaxControlToolkit做出來的。

 


 

因為我太會寫javascript,也不會jquery。所以想要有這頁的特效~~跟本不可能!!

所以只好~~硬做!!使用我最會用的ASP.NET的AjaxControl去用出差不多的特效。

心得分享....將兩個AjaxControl的特效做結合出來。而且圖還是從資料庫抓出來!!

 

   這邊是java~~會被當掉~~頭尾我就拿掉了~~你們自已寫吧
    function onSlideChanging(sender, args)
    {
        // 取得相片總數
        if (!totalSlides)
            var totalSlides = sender._slides.length;
        // 目前播放的相片索引值
        var currentSlideIndex = args.get_slideIndex();
        // 「上一張」按鈕
        var previous = $get("btnPrevious");
        // 「下一張」按鈕
        var next = $get("btnNext");
       
        // 隱藏或顯示上一張、下一張按鈕
        previous.style.visibility = (currentSlideIndex > 0) ?
            "visible" : "hidden";
        next.style.visibility = (currentSlideIndex < totalSlides - 1) ?
            "visible" : "hidden";
       
        // 相片說明與頁數
        $get("description").innerHTML =
            sender._slides[currentSlideIndex].ImagePath;
        $get("pager").innerHTML = "<i>頁次:</i><font color='red'>" +
            (currentSlideIndex + 1) + " / " + totalSlides + "</font>";
    }

 

在來是用~~asp的image做縮圖~~把ajax加在圖上!!

  <asp:Image ID="Image2" runat="server" ImageUrl ='<%# Eval("xxxxx") %>'  CssClass="album_simg" />
                                                <%-- 強制回應彈出式方塊(ModalPopup)的容器 --%>
                                                <asp:Panel ID="panModalPopup" runat="server"  style="display:none "  >
                                                    <%-- 強制回應彈出式方塊可拖曳的地方 --%>
                                                    <asp:LinkButton ID="lnkbtnClose" runat="server" CssClass="close"
                ToolTip="關閉"
                OnClientClick=
                "$find('ModalPopupExtender1').hide(); return false;" />

下面是版面設定。
                                                    <div style="text-align: center">
                                                        <table>
                                                            <tr>
                                                                <td>
                                                                    <asp:ImageButton ID="btnPrevious" runat="server" ImageUrl="~/App_Themes/image/l.png"   Text="◀" ToolTip="上一張" />
                                                                </td>
                                                                <td>
                                                                    <asp:Image ID="Image1" runat="server"  CssClass="album_img" />
                                                                </td>
                                                                <td>
                                                                    <asp:ImageButton ID="btnNext" runat="server" ImageUrl="~/App_Themes/image/r.png"   Text="▶" ToolTip="下一張" />
                                                                </td>
                                                            </tr>
                                                            <tr>
                                                                <td>
                                                                </td>
                                                                <td>
                                                                    <table width="100%">
                                                                        <tr>
                                                                            <td>
                                                                                <asp:Label ID="description" runat="server" />
                                                                            </td>
                                                                            <td align="right">
                                                                                <asp:Label ID="pager" runat="server" />
                                                                            </td>
                                                                        </tr>
                                                                    </table>
                                                                </td>
                                                                <td>
                                                                </td>
                                                            </tr>
                                                        </table>

上面這邊只是版面的設定~~可以用自已的方法!!

下面這個就是用ajaxToolkit的相簿的功能~~換圖。
                                                        <ajaxToolkit:SlideShowExtender ID="slideshowextend1" runat="server"
            TargetControlID="Image1" SlideShowServiceMethod="GetSlides"
            AutoPlay="False" NextButtonID="btnNext"
            PreviousButtonID="btnPrevious" Loop="true"
            PlayInterval="5000" />
                                                    </div>
                                                </asp:Panel>

這裡就是用ajaxToolkit的強制回應視窗~
                                                <ajaxToolkit:ModalPopupExtender ID="ModalPopupExtender1" runat="server"
        TargetControlID="Image2" PopupControlID="panModalPopup"
        BackgroundCssClass="cssModalBackground" DropShadow="True"
        RepositionMode="RepositionOnWindowScroll"
          />
                                            </td>
                                        </tr>
                                    </table>


只是在程式碼裡面要把~圖用給相簿

下面這個是用LINQ+DATESET的方法把圖全部先抓出來~~傳回相簿讓ajax去放。

  <WebMethod(Description:="傳回相簿")> _
      Public Shared Function GetSlides() As Slide()
        Dim myDS As New DS()
        '透過NewsTableAdapter將資料載入myDS.Employees的DataTable中
        Dim NewsDS As New DSTableAdapters.xxxxxTableAdapter()
        NewsDS.Fill(myDS.xxxxx)

        Dim query = From N In myDS.xxxxx_
                    Select N.xxxxxNumber, N.xxxxxTitle, N.xxxxxFile

        Dim Slides(query.Count - 1) As Slide
        Dim imga(100) As String
        Dim g As Integer = 0
        For Each i In query

            Dim _image As String
            Dim _title As String
            Dim _description As String


            _image = i.albFile
            _title = i.albTitle
            _description = ""
            Slides(g) = New Slide(_image, _title, _description)
            g += 1
        Next

        Return Slides
    End Function


以上兩個ajax的使用方法在~~章立民研究室所寫的書都有~~只是我把兩個功能合在一起用~~~

好書一本~~我到現在只學到二章0 0就覺得好難了~~可是~~很好用。推推推

arrow
arrow
    全站熱搜

    毛魚 發表在 痞客邦 留言(0) 人氣()