随机文本,嵌入代码和URL's列表

Randomize text, embed codes and URL's from list

本文关键字:列表 URL 文本 代码 随机      更新时间:2023-09-26

我有一个电影标题的列表,youtube的URL(我可以用它来构建一个嵌入代码)和IMDB的URL。在每次刷新页面时,必须出现另一个电影标题,Youtube视频和带有IMDB URL的文本。

["Movie A", "URL_to_youtube_movie_A", "URL_to_IMDB_movie_A"],
["Movie B", "URL_to_youtube_movie_B", "URL_to_IMDB_movie_B"],
etc.

我的网站已经有一个刷新按钮:页面重新加载与<a href="javascript:history.go(0)"></a>。我如何使youtube视频随机显示?我希望输出是HTML,这样我就可以在必要时添加元素。

对数组进行洗牌,可以使用下划线,也可以编写自定义函数:

list = _.shuffle(list) 

则先输出n部电影。这是最简单的方法,我认为对你的情况来说已经足够好了。

我将创建一个对象数组。Movie是一个对象,像这样:

var list = [{ title: "Movie A", urlYouTube: "URL_to_youtube_movie", urlImdb: "URL_to_IMDB_movie_A"}, ...]

如果你打算做更多的操作,而不仅仅是显示随机的电影,看看一些javascript框架(backbone.js, angular,…)。

我建议您使用模板输出HTML。下划线也有简单的模板实现。_。template(templateString, [data], [settings])

像这样:DEMO &&代码

用简单的javascript没有任何库您将需要如下所示的示例函数

function arrayShuffle(oldArray) {
    var newArray = oldArray.slice();
    var len = newArray.length;
    var i = len;
     while (i--) {
        var p = parseInt(Math.random()*len);
        var t = newArray[i];
        newArray[i] = newArray[p];
        newArray[p] = t;
    }
    return newArray; 
};

把它命名为

  var list = [{ title: "Movie A", urlYouTube: "URL_to_youtube_movie_A", urlImdb: "URL_to_IMDB_movie_A"}, 
                { title: "Movie B", urlYouTube: "URL_to_youtube_movie_B", urlImdb: "URL_to_IMDB_movie_B"}, 
                { title: "Movie C", urlYouTube: "URL_to_youtube_movie_C", urlImdb: "URL_to_IMDB_movie_C"}];
   var Suffledlist = arrayShuffle(list);

然后显示前2或5个元素