2016-12-01 51 views
-1

我正在尝试建立一个链接,当用户点击它将网址随机更改为增值服务中的一个。点击更改网址到随机增值服务

$(".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

你的意思'了window.location + =网址;'也许?不知道你的问题是什么。 –

+0

网址应随机更改为某个内容。 ex。 localhost /?lang = al可以说,但是如果它再次点击应该改成localhost /?lang = en –

+0

应该只显示的URL改变,还是你真的想转到另一个页面? – kay

回答

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>

+0

非常感谢兄弟:) 它工作。 P.s.所以我几乎接近大声笑。 –

+0

@ErblinDerguti没问题。不要忘记标记为答案。 ;) –