2011-11-03 79 views
0

我有一個由divs組成的幻燈片。每個Div都包含一張圖片和一些html控件。我遇到了一個問題,如果您單擊其中一個控件,而不是第一個控件,它只會更新第一個控件。只有幻燈片之間發生變化的是顯示器,當您瀏覽幻燈片時,它將從無變爲無效。有沒有什麼辦法可以在jQuery中更改幻燈片上的信息,而無需執行每條語句並搜索哪些類未隱藏?感謝您的任何幫助。jquery幻燈片放映。確定您正在使用哪個幻燈片AKA Div

<div class="TheSlide"> 
     <table> 
     <tr> 
     <td> 

      <div id="divSlideImage"> <asp:HiddenField runat="server" ID="HiddenField1" Value='<%#Eval("ID") %>' /> 
       <asp:ImageButton runat="server" CssClass="AlbumImageView" Height="480" ID="MainPicture" 
        ImageUrl='<%#Eval("PhotoMainImageURL") %>' AlternateText="Slide not showing properly. Refresh Page." /> 
        <div id="pictureTagBorder"></div> 
        </div> 

<div class="TheSlide"> 
     <table> 
     <tr> 
     <td> 

      <div id="divSlideImage"> <asp:HiddenField runat="server" ID="HiddenField1" Value='<%#Eval("ID") %>' /> 
       <asp:ImageButton runat="server" CssClass="AlbumImageView" Height="480" ID="MainPicture" 
        ImageUrl='<%#Eval("PhotoMainImageURL") %>' AlternateText="Slide not showing properly. Refresh Page." /> 
        <div id="pictureTagBorder"></div> 
        </div> 

我想上標記這個類照片時上控制用戶點擊,但只會做第一張幻燈片此腳本。

$(document).ready(function() { 
      var top = y - 232; 
      var left = x - 145; 
      $('#pictureTagBorder').css({ top:top , left: left }); 
     }); 

回答

2

pictureTagBorder不是一個類,它是一個id屬性。您的id屬性必須在每個頁面上都是唯一的,我猜測您有多個元素id="pictureTagBorder"id="divSlideImage"(可能還有其他元素),因此您的HTML無效。一個ID選擇,如#pictureTagBorder,將至多有一個元素匹配,你說

它只會做這個腳本在第一張幻燈片

所以你的問題是,你正在使用id屬性,當你應該使用CSS類來識別你的幻燈片元素。