gpt4 book ai didi

javascript - 每次页面被其他人重新加载时如何打开一个新链接?

转载 作者:太空宇宙 更新时间:2023-11-04 13:08:15 25 4
gpt4 key购买 nike

我正在尝试打开构建一个系统,每次单击 anchor 标记时都会打开一个新链接。我尝试使用随机函数,但有时它会一次又一次地打开同一个链接。但是,由于我希望链接按顺序打开并遵循循环..也就是说,如果我有三个链接,用户第一次单击 anchor 文本将打开第一个链接,然后是第二个,然后是第三个,然后是第一个链接..

这意味着如果不同的用户点击,链接必须改变

这是我发现的使用随机函数的代码..

<script type="text/javascript'>
function random_3(){
var myrandom=Math.round(Math.random()*2)
var link1="http://www.codingforums.com"
var link2="http://www.cssdrive.com"
var link3="http://www.dynamicdrive.com"
if (myrandom==0)
window.location=link1
else if (myrandom==1)
window.location=link2
else if (myrandom==2)
window.location=link3
}
</script>
<form>
<input type="button" value="random link!" onClick="random_3()">
</form>

有人可以帮我解决这个问题吗?

最佳答案

I tried using random function but at times it opens the same link again and again

由于您使用的是随机计算,您可能会连续多次获得相同的链接。请尝试以下操作:

var myrandom=Math.floor(Math.random()*3);

您应该通过这种方式获得更好的分布。

现在,关于您最初的问题,如果您希望在页面重新加载之间保持持久状态,以便每次链接都不同,您可能需要使用 cookie 或 localStorage 来存储上次使用的索引对于那个用户。

例子:

var links = ['http://www.codingforums.com', 'http://www.cssdrive.com', 'http://www.dynamicdrive.com'];
function nextLink() {
var index = localStorage.getItem('lastPos') || -1;
index = (index + 1) % links.length;
localStorage.setItem('lastPos', index);
return links[index];
}

关于javascript - 每次页面被其他人重新加载时如何打开一个新链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37279545/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com