2012-10-07 17 views
0

首先,這應該是在我的瀏覽器中作爲網頁離線運行,並且應該不需要額外安裝如php。從文件動態加載隨機url到iframe

我有一個iframe的內容應該隨機加載。

我:

  • /index.html(使用iframe頁面)
  • /files.txt(相對URL的 列表的文件)

和噸.html文件(也在子文件夾中)。
對於這些文件中的每一個,都存在files.txt中的條目,它具有精確的相對路徑。

如果我沒有這麼多的文件,我只需要用相關的URL創建一個硬編碼的javascript數組,然後從該數組中隨機輸入一個作爲iframe源的項。 但我說的是> 6000個文件。 那麼我該怎麼做?

+1

你就不能解析的'文件的內容生成的JavaScript代碼.txt'? 'grep' /'sed' /'awk'?如果雖然'files.txt'經常變化,但不是可行的... –

+0

不錯的主意,我是一個noob,但我會設法做到這一點與谷歌肯定。 我唯一擔心的是,對6500個條目進行硬編碼可能會減慢加載時間。 這種擔憂是否過時? – Stephen

回答

0

您可以使用jQuery通過AJAX加載文件列表,通過\n分裂並設置隨機線爲src iframe的:

$.ajax({ 
    url: 'files.txt', 
    success: function(text) { 
    var fileList = text.split('\n'); 
    var randomIndex = randomInt(0, fileList.length - 1);  

    $('iframe').attr('src', fileList[randomIndex]); 
    } 
}); 

function randomInt(min, max) { 
    return Math.floor(Math.random() * (max - min + 1)) + min; 
} 
+0

我需要弄清楚如何先使用jQuery和AJAX,然後我會試試這個。 謝謝 – Stephen

+0

如果我只是將它粘貼到標記下面,它仍然不起作用。 我很好,但似乎我不知道足夠的jQuery來實現這一點。 願你多幫一次嗎? – Stephen

+0

您的HTML應該看起來像這樣:http://pastebin.com/HBg9dF0z – Inferpse