有一个循环通过DIV的脚本(在隐藏其他人的同时显示另一个DIV)。
它被称为“每10秒循环一次div”
它工作正常,但我需要通过点击特殊按钮TOO来选择一个特殊的DIV。
有3个标题为1 - 2 - 3的DIVS(活动为红色)循环脚本会更改DIV并向右显示。 BUt点击2 DIV Nr。 2应该变得活跃。 (并且循环应该继续使用Nr.3 - 1 - 2 ....
简单地说:点击按钮3
时如何告诉脚本“counter = 3”http://nill-theobald.de/index-test1.html =基于计时器的脚本 (http://nill-theobald.de/index-test2.html =通过点击(完全不同的脚本))
请告诉它一个完整的javascript-idiot(= me ...)
: - )
谢谢你!答案 0 :(得分:0)
“简单地说:如何在点击按钮3时告诉脚本”counter = 3“ - 我假设您的脚本是here
假设您有一个这样的按钮(例如):
<input type="button" id="button-3" value="Click me">
用于处理点击的JS非常简单:
$("#button-3").click(function() {
counter = 3;
});
此处理程序必须与计数器变量在同一范围内才能使其工作(如果上面链接的脚本可以在声明 var counter = 0; 之后);
编辑: 还有一件事。为确保在预期时间内切换div,您必须强制执行一些intervalId管理。
HTML:
<a href="#" class="button" rel="1"><img width="11" height="10" alt="video 1" src="orange.gif"></a>
<a href="#" class="button" rel="2"><img width="11" height="10" alt="video 1" src="grau.gif"></a>
<a href="#" class="button" rel="3"><img width="11" height="10" alt="video 1" src="grau.gif"></a>
JS:
$(".button").click(function() {
counter = parseInt(this.rel);
showDiv(); // show next div
setIntervalSwitch(); // reset the interval so the next "switch" is in X seconds
});
var intervalId;
var setIntervalSwitch = function() {
clearInterval(intervalId); // clear old interval
// now start interval again
intervalId = setInterval(function () {
showDiv(); // show next div
}, 5 * 1000);
}
// call the setIntervalSwitch to initialize interval before someone manually click on any div
setIntervalSwitch();