2016-04-29 110 views
0

嘗試在點擊時更改div中的某些內容。找到了一個解決方案,但它只適用於ID。只更改一個div的內容。如何解決它?如何更改點擊中的內容?

$(document).ready(function() {  
$("#buttons a").click(function() { 
    var id = $(this).attr("id"); 
    $("#pages div").css("display", "none"); 
    $("#pages div#" + id + "").css("display", "block"); 
    });}); 

這裏是Jsfiddle

更新。 編輯Jsfiddle一點點。下面是圖片:第n個孩子:()選擇:

enter image description here

+0

$(「#pages div」)這是更改所有div的部分嗎? –

+0

您可以使用'.classname'或'[attribute = value]'或簡單的'[attribute]'來更改'#idselectors'。你有很多可能的選擇器在CSS中使用/ javascript –

+0

我會使用類而不是設置內聯樣式。我確實試圖用一個例子來更新你的小提琴,但不清楚究竟是想要展示和隱藏什麼。 – kwelch

回答

1

不知道如果我理解正確的,但如果你想改變多個div的內容,你可以做這樣的:

https://jsfiddle.net/Airrudi/mA8hj/139/

$(document).ready(function() {  
    $("button").click(function() { 
     var content = $(this).data('content'); 
     $('#pages .allowChange p').html(content); 
    });  
}); 

您是否可以詳細闡述一下您的問題,如果這不是您正在尋找的?

+0

已編輯帖子。你的選擇看起來不錯!謝謝! – QuackZilla

1

您可以通過使用獲得的第一個div。閱讀 這個Here

$(document).ready(function() {  
    $("#buttons a").click(function() { 
    var id = $(this).attr("id"); 
    $("#pages div:nth-child(1)").css("display", "none"); 
    $("#pages div#" + id + "").css("display", "block"); 
    }); 
}); 
+0

你可以使用':first'而不是':nth-​​child(1)',如果這就是你需要的全部 – CAbbott

+1

@CAbbott問題說任何1 div,所以我認爲它可能不是第一個。 –