我试图建立一个链接,当用户点击它以随机更改网址到其中一个变种时。
$(".link").click(function(){
var safeLangs = ['en','al','de','fr','gr'];
var rand = function() {
return Math.floor(Math.random()*6);
};
var randomLangFunction = function() {
var randomLang = safeLangs[rand()];
return randomLang;
};
url = "?lang=" + randomLang();
window.location = url;
})
问题已解决,谢谢。 By Scott Marcus
答案 0 :(得分:1)
在代码的最后,您错误地调用了您的函数:randomLang();
当它真的是:randomLangFunction()
。我还删除了您的rand
功能并将其合并到另一个功能中。
$(".link").click(function(){
var safeLangs = ['en','al','de','fr','gr'];
var randomLangFunction = function() {
// No need to make a separate function for the random since
// this function is part of that process. Also, don't hard
// code "6" as the random multiplier as that will need to
// change if you add more languages. Just get the length
// of the languages array:
return safeLangs[Math.floor(Math.random()*safeLangs.length)];
};
url = "?lang=" + randomLangFunction();
console.log(url);
// Commented only for example to work:
// window.location = url;
})

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a class="link" href="#">Click Me</a>
&#13;