我正在尝试使用JavaScript从数组生成随机结果。我的目标是,当用户单击按钮时,我想从名为“favorites”的数组中获取随机结果。它仅在页面刷新后才有效,但是当您第二次单击它时,它会返回相同的结果。
$('#button').click(function(){
var favorites = ["http://google.com", "http://yahoo.com", "http://msn.com", "http://apple.com"];
var favorite = favorites[Math.floor(Math.random() * favorites.length)];
var postmessage = "hi my favorite site is " + favorite;
alert(postmessage);
});
答案 0 :(得分:1)
请尝试以下代码。
$('#button').click(function(){
var favorites = ["http://google.com", "http://yahoo.com", "http://msn.com", "http://apple.com"];
var favorite = $.rand(favorites);;
var postmessage = "hi my favorite site is " + favorite;
alert(postmessage);
});
(function($) {
$.rand = function(arg) {
if ($.isArray(arg)) {
return arg[$.rand(arg.length)];
} else if (typeof arg === "number") {
return Math.floor(Math.random() * arg);
} else {
return 4; // chosen by fair dice roll
}
};
})(jQuery);
更新小提琴:
谢谢,
希瓦