AlexCyber
03-08-2008, 00:04
var op = function(){
function opacity(id, opacStart, opacEnd, millisec) {
//speed for each frame
var speed = Math.round(millisec / 100);
var timer = 0;
var self = this;
//determine the direction for the blending, if start and end are the same nothing happens
if(opacStart > opacEnd) {
for(i = opacStart; i >= opacEnd; i--) {
setTimeout(function(){self.changeOpac(i,id)},(timer * speed));
timer++;
}
} else if(opacStart < opacEnd) {
for(i = opacStart; i <= opacEnd; i++)
{
setTimeout(function(){self.changeOpac(i,id)},(timer * speed));
timer++;
}
}
};
function changeOpac(opacity, id) {
var object = document.getElementById(id).style;
object.opacity = (opacity / 100);
object.MozOpacity = (opacity / 100);
object.KhtmlOpacity = (opacity / 100);
object.filter = "alpha(opacity=" + opacity + ")";
};
return {
opacity:opacity
}
}();
<body>
<script>
window.onload=function(){
op.opacity('box', 0, 100, 4000)
//obj.opacity('box', 0, 100, 4000)
}
</script>
<div id="box">
<p>bla bla bla bla bla blabla bla blabla bla bla</p>
</div>
</body>
il metodo changeOpac non viene trovato:
setTimeout(function(){self.changeOpac(i,id)},(timer * speed));
non so più cosa fare le ho provate tutte, come si può fare?
grazie
function opacity(id, opacStart, opacEnd, millisec) {
//speed for each frame
var speed = Math.round(millisec / 100);
var timer = 0;
var self = this;
//determine the direction for the blending, if start and end are the same nothing happens
if(opacStart > opacEnd) {
for(i = opacStart; i >= opacEnd; i--) {
setTimeout(function(){self.changeOpac(i,id)},(timer * speed));
timer++;
}
} else if(opacStart < opacEnd) {
for(i = opacStart; i <= opacEnd; i++)
{
setTimeout(function(){self.changeOpac(i,id)},(timer * speed));
timer++;
}
}
};
function changeOpac(opacity, id) {
var object = document.getElementById(id).style;
object.opacity = (opacity / 100);
object.MozOpacity = (opacity / 100);
object.KhtmlOpacity = (opacity / 100);
object.filter = "alpha(opacity=" + opacity + ")";
};
return {
opacity:opacity
}
}();
<body>
<script>
window.onload=function(){
op.opacity('box', 0, 100, 4000)
//obj.opacity('box', 0, 100, 4000)
}
</script>
<div id="box">
<p>bla bla bla bla bla blabla bla blabla bla bla</p>
</div>
</body>
il metodo changeOpac non viene trovato:
setTimeout(function(){self.changeOpac(i,id)},(timer * speed));
non so più cosa fare le ho provate tutte, come si può fare?
grazie