2014-03-01 81 views
2

我有一個文件夾,其中包含任意數量的不同圖像。我想一次選擇任何隨機圖像。從文件夾JQuery中選擇隨機圖像文件

<div id="putimages"> 
<img id="my_image" src"any random images from selected folder"/> 
</div> 

我如何使用Jquery來做到這一點?

+0

服務器文件夾或用戶文件夾? –

+0

我正在使用我的本地文件夾 – insanity

回答

4

你的用戶需要使用瀏覽器對話框中選擇一個目錄。然後,如果目錄僅包含圖片,你可以嘗試下面的代碼片段:

$('input').on('change', function() { 
    var reader = new FileReader(); 
    reader.onload = function (e) { 
     $('#my_image').attr('src', e.target.result); 
    } 

    if (!this.files.length) return; 

    var randIndex = parseInt(Math.random() * this.files.length, 10); 
    reader.readAsDataURL(this.files[randIndex]); 

}); 

相關HTML:

<input type="file" multiple webkitdirectory mozdirectory msdirectory odirectory directory /> 
<div id="putimages"> 
    <img id="my_image" /> 
</div> 

見例如:http://jsfiddle.net/Dk9rc/

+0

感謝這項工作。 – insanity

2

首先,如果你已經爲你的例如文件夾中100圖像並命名相似圖片images1.jpgimgaes2.jpgimages3.jpg .....直到images100.jpg

其次,如果你把你的圖像稱爲Images文件夾內和當前HTML是同一水平這個文件夾,那麼你可以使用:

var randomNum = Math.floor((Math.random()*100)+1); 
$('#my_image').attr('src', 'Images/images' + randomNum + '.jpg'); 
+0

如果我的文件夾包含的圖像名稱不是像image1.jpg或image2.jpg那麼怎麼辦 – insanity

+0

如何命名它,如果它不遵循任何命名約定,那麼這是不可能的達到你的要求。 – Felix

+0

使用jquery獲取文件夾中所有文件的名稱是不可能的? – insanity

相關問題