2011-07-14 37 views
3

你好,只是想知道如果有人知道這將在jQuery中。與jQuery相當的是什麼?

function remix(random_num){ 
    var limit = images.length; 
    var random_num1 = Math.floor(limit * Math.random()); 
    var random_num2 = Math.floor(limit * Math.random()); 
    var random_num3 = Math.floor(limit * Math.random()); 
    document.getElementById("layer1").src = images[random_num1]; 
    document.getElementById("layer2").src = images[random_num2]; 
    document.getElementById("layer3").src = images[random_num3]; 
} 
+0

應該 「jQuery中」 的工作方式它是。你在尋找[選擇器上的文檔](http://api.jquery.com/category/selectors/)? –

+0

刪除了稱呼:「提前致謝。」,下次不要執行。 –

回答

2

也許像這將是更好的

function remix(random_num){ 
    var limit = images.length; 
    for(var i = 0; i< 3;i++){ 
    var random = Math.floor(limit * Math.random()); 
    $("#layer"+i).attr("src", images[random]) 
    } 

}

0

類似下面

function remix(random_num){ 
     var limit = images.length; 
     var random_num1 = Math.floor(limit * Math.random()); 
     var random_num2 = Math.floor(limit * Math.random()); 
     var random_num3 = Math.floor(limit * Math.random()); 
     $("#layer1").attr("src",images[random_num1]); 
     $("#layer2").attr("src", images[random_num2]); 
     $("#layer3").attr("src",images[random_num3]); 
    } 
+2

您必須使用'$(「#...」)。attr(「src」,newValue);'。 '$(「#...」)。attr(「src」)= newValue;'不起作用。 – Arxisos

+1

他沒有將它們設置爲隨機數,他正在從'圖像'數組中選擇一個隨機索引。 –

+0

@Arxisos同意編輯我的答案 –

1
function remix(random_num){ 
    var limit = images.length; 
    $("#layer1").attr("src", images[Math.floor(limit * Math.random())]); 
    $("#layer2").attr("src", images[Math.floor(limit * Math.random())]); 
    $("#layer3").attr("src", images[Math.floor(limit * Math.random())]); 
} 
3

替換所有

document.getElementById("layerN").src = images[random_numN]; 

$("#layerN").attr("src", images[random_numN]); 
0

jQuery的可以在這裏做的唯一的事情就是幫你設置src屬性。

$('#layer1').attr('src', images[random_num1]); 
$('#layer2').attr('src', images[random_num2]); 
$('#layer3').attr('src', images[random_num3]); 
0
function remix(){ 
    var limit = images.length; 
    $([1,2,3]).each(function(idx){ 
     $('#layer' + idx).attr('src', images[Math.floor(limit * Math.random())]); 
    }); 
} 
3

怎麼樣:

// give your images a common class name, then: 
function remix(){ 
    var images = $('.images'); 
    images.each(function(){ 
     $(this).attr('src', images[0 | images.length * Math.random() ]); 
    }); 
} 

如果你不想給他們一個共同的類名,更改$('.images')$('#layer1,#layer2,#layer3')