Замысел, чтобы происходило вот что:
<!DOCTYPE HTML>
<html>
<head></head>
<body>
<div id='g' style='background:rgb(100,0,0);width:100px; height:100px; position:absolute; top:0px;left:100px;'
onMouseOver='app()' onMouseOut='disapp()'></div>
<script>
var d, c, h = 100,
el = document.getElementById('g');
function a() {
if (h <= 250) {
h += 5;
el.style.background = 'rgb(' + h + ',0,0)';
} else {
clearInterval(d);
}
}
function b() {
if (h >= 100) {
h -= 5;
el.style.background = 'rgb(' + h + ',0,0)';
} else {
clearInterval(c);
}
}
function app() {
clearInterval(c);
d = setInterval(a, 10);
}
function disapp() {
clearInterval(d);
c = setInterval(b, 10);
}
</script>
</body>
</html>
только с несколькими объектами сразу. Проблема в том, что setInterval не может воззвать к функции с аргументом:
<!DOCTYPE HTML>
<html>
<head></head>
<body>
<div id='g' style='background:rgb(100,100,100);width:100px; height:100px; position:absolute; top:0px;left:100px;'
onMouseOver='disapp(1)' onMouseOut='app(1)'></div>
<div id='g' style='background:rgb(100,100,100);width:100px; height:100px; position:absolute; top:100px;left:100px;'
onMouseOver='disapp(1)' onMouseOut='app(1)'></div>
<script>
var d, c, visited = false,
h = 100;
alert('a');
function a(z) {
alert(z);
if (h <= 250) {
h += 5;
el.style.background = 'rgb(' + h + ',0,0)';
} else {
clearInterval(d);
}
}
function b(z) {
alert(z);
if (h >= 100) {
h -= 5;
el.style.background = 'rgb(' + h + ',0,0)';
} else {
clearInterval(c);
}
}
function app(x) {
clearInterval(c);
d = setInterval(a(x), 10);
}
function disapp(x) {
clearInterval(d);
c = setInterval(b(x), 10);
}
</script>
</body>
</html>
Подскажите, что мне делать что бы можно было такое осуществить (не только с RGB/RGBA, это просто пример).
Заранее благодарен