2011-07-15 94 views
0

儘管有幾個小時的混亂,但我還是無法弄清楚這一點,希望這是以前做過很多次的事情!在我的測試網站(http://www.sketch360test.co.uk/giclee.php)上,我有一個由jQuery支持的問題/答案佈局,我已經按照我的喜好以簡單的形式工作。但是,我需要使用出現在其他答案中的元素來觸發某些答案行。例如,如果您選擇第一個選項「Giclee - 過程」,那裏有一些項目,例如「讀取blurb」文本,我需要切換「blurb」div回答行,然後選擇「選擇您的論文「圖像按鈕,需要切換'論文'div答案行。jQuery問題/答案使用小提琴;在答案'a'中觸發html元素的答案'b'

所以效果「選擇你的論文的形象將做同樣的工作爲「報紙」觸發按鈕(這將是可愛的,如果點擊「選擇你的論文」的形象也可能引發背景圖像變化在我現有的jQuery中存在的'論文'按鈕中,儘管我已經準備好了這一點,但這可能是太過分了!)。我現有的jQuery如下所示,正如我所說的,我已經將各種類添加到新的觸發器元素中,但尚未能夠獲得正確的結果 - 但是沒有搞亂現有的功能。任何幫助將不勝感激......

jQuery.fn.fadeToggle = function(speed, easing, callback) { 
    return this.animate({opacity: 'toggle'}, speed, easing, callback); 
}; 

$(function() { 
    $("#answer .views-row").hide(); 
    $("#question .views-row").click(function(){ 
     var i = $(this).index(); 
     $("#answer .views-row").eq(i).toggle("slow").siblings().hide(); 
    $(".question").css("background-image", "url(/img/bg/nav-giclee.png)").eq(i).css("background-image", "url(/img/bg/nav-down.png)"); 
    }); 
}); 

回答

0

我覺得這個例子的jsfiddle(http://jsfiddle.net/alr3/LPNfZ/)我放在一起會回答你的問題。我沒有複製你的所有模型,而是使用了列表而不是div,但是這個答案會做你所需要的,甚至使用「使用父對應的索引來顯示和隱藏」方法。

但是,我會建議使用「標題」和「內容」/答案的具體名稱,然後它會很容易,你只要把點擊事件放在任何你想成爲一個鏈接顯示一個不同的內容,如

$("#my-image-that-now-opens-an-answer-id").click(function() { $("some-specific-header-id").click(); }); 
+0

我已經成功地得到它通過使用特定的「頭文件」 /「回答」你的建議的工作。但是,新的特定觸發器不會更改相關問題選項卡的背景圖像。我使用以下代碼將所有問題標籤重置爲原始顏色(綠色):$(「。question」)。css(「background-image」,「url(/ img/bg/nav -giclee.png)「);並重命名了特定的「問題」選項卡,我希望觸發器發生更改,但以下代碼行不會執行更改:$(「#section-menu-3 .question」)。css(「background-image」 ,「url(/img/bg/nav-down.png)」); – sketch360