我正在隨機顯示一定數量的div。但是,我想允許重複div,所以我假設我需要克隆多次選擇的div。我所擁有的一切,除了克隆一部分下來,在這個小提琴所示:從數組中隨機選擇多於一次的克隆Div
正如你可以看到,如果一個div選擇不止一次,它只顯示了它的第一個實例。如果有必要的話,任何人都可以提供克隆幫助,那會很好。謝謝。下面是jQuery代碼至今:
$("#button").click(function() {
$("div.item").css("display", "none");
var idValues = [];
var randomValues = [];
$("div.item").each(function() {
idValues.push($(this).attr("data-id"));
});
for (var i = 0; i < 4; i++) {
randomValues.push(idValues[Math.floor(Math.random() * idValues.length)]);
}
for (var j = 0; j < randomValues.length; j++) {
group = randomValues[j];
$('div.item').each(function() {
if ($(this).attr("data-id") == group) {
$(this).css("display", "block");
}
});
}
});
編輯:我在想,我需要插入這樣的事情:
if ($(this).length) {
$this.clone().appendTo("#container").css("display", "block");
}
你的代碼只顯示/隱藏** **現有的div,沒有創建/銷燬/克隆回事。你期望的效果是什麼? –
編輯是爲了展示我想要克隆的內容,但是Rory回答得非常好:當一個div不止一次被選中時,它會通過克隆多次顯示。 – Beau