Скрипт для открытия последовательных ссылок при каждом нажатии кнопки - PullRequest
0 голосов
/ 13 марта 2020

У меня есть скрипт, который открывает ссылки случайным образом ... но мне нужно было знать, как создать скрипт, чтобы открыть ссылку самостоятельно, а затем вернуться к исходной. Например ... Нажмите на кнопку, и она откроет ссылку1. Нажмите его еще раз, и он откроет ссылку2 ... снова и откроет ссылку3 ...., затем откроет ссылку4 ...., а затем снова откроет ссылку1. Я использую этот скрипт, чтобы он открывал ссылку случайным образом .... но мне нужно, чтобы он был последовательным, и после открытия последней ссылки он снова открывает link1. Можете ли вы помочь мне, ребята ?! С наилучшими пожеланиями! Алекс.


<script>
<! -
/ *
Random Links Button
* /

// Specify the links to work at random below. You can enter as many as needed
var randomlinks=new Array()

randomlinks[0]="https://website1.com"
randomlinks[1]="https://website2.com"
randomlinks[2]="https://website3.com"
randomlinks[3]="https://website4.com"

function randomlink(){
window.location=randomlinks[Math.floor(Math.random()*randomlinks.length)]
}
// - END OF SCRIPT-

</script>

Ответы [ 2 ]

1 голос
/ 13 марта 2020

Вы должны иметь возможность изменять глобальную переменную, которая действует как счетчик кликов, внутри функции. Например:

var randomlinks=new Array();
    randomlinks[0]="https://website1.com"
    randomlinks[1]="https://website2.com"
    randomlinks[2]="https://website3.com"
    randomlinks[3]="https://website4.com"

var i=0;

function clickroundrobin(e){
    if( i >= randomlinks.length )i=0;
    var url=randomlinks[i];
    i++;
    window.location=url;
}

Для проверки:

			var randomlinks=new Array();
				randomlinks[0]="https://website1.com"
				randomlinks[1]="https://website2.com"
				randomlinks[2]="https://website3.com"
				randomlinks[3]="https://website4.com"
				
			var i=0;

			function clickroundrobin(e){
				if( i >= randomlinks.length )i=0;
				var url=randomlinks[i];
				i++;
				//window.location=url;
				alert( url )
			}
<a href='#' onclick='clickroundrobin(event)'>Click</a>
0 голосов
/ 13 марта 2020

Вы можете сделать это, используя window.open и итерируя значение переменной на кнопке и передавая его как индекс массива

<button onclick="randomlink()" >Random Link</button>
<script>
Links = []
Links.push("https://alloytech.wordpress.com");
Links.push("https://www.google.com/");
Links.push("https://www.youtube.com/");
Links.push("https://www.stackoverflow.com/");
var randomParam=0;
function randomlink() {
randomParam = randomParam >= Links.length?0:randomParam;
window.open(Links[randomParam],'popUpWindow','height=400,width=800,scrollbars=yes');  
randomParam++;
}
</script>

Я думаю, это то, что вы ожидаете

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...