Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Cascais51

[Resolvido] Banner rolante

Recommended Posts

Olá pessoal, mais um problema com o IE.

Bom o negócio é o seguinte preciso fazer um banner que role na página de acordo mexemos na barra de rolagem, até ai eu consegui fazer beleza e funciona nos dois navegadores com muito trabalho.

Porém eu quero que o banner só desça até determinada parte da página para ficar certinho com o layout da página.

ai fiz umas modificações no script que funcinam perfeitamente no firefox, MAS NO IE NÃO.

segue o script original:

 

 

/* DEFINIMOS OS OBJETOS navegador e janela QUE SERÁ USADO DIVERSAS VEZES */

var navegador =
{
	ns6: (!document.all && document.getElementById),
	ie4: (document.all),
	ns4: (document.layers)
};


janela = {
}
janela.getLimiteSuperior = function ()
{
	if (navegador.ie4)
		return document.documentElement.scrollTop;
	return scrollY;
}
janela.getLimiteEsquerdo = function ()
{
	if (navegador.ie4)
		return document.documentElement.scrollLeft;
	return scrollX;
}

/**
 * Retorna altura da área util da janela.
 * @return altura da área util da janela
 * @author Marcelo C. de Freitas
 * @timestamp 14/11/2003
*/
janela.getHeight = function ()
{
	if (navegador.ns4 || navegador.ns6)
		return window.innerHeight;
	else if (navegador.ie4)
		return document.body.clientHeight;
	else
		alert ("Navegador não suportado!");
} // function getHeight ()

/**
 * Retorna largura da área util da janela.
 * @return largura da área util da janela
 * @author Marcelo C. de Freitas
 * @timestamp 14/11/2003
 */
janela.getWidth = function () {
	if (navegador.ns4 || navegador.ns6)
		return window.innerWidth;
	else if (navegador.ie4)
		return document.body.clientWidth;
	else
		alert ("Navegador não suportado!");
} // function getWidth ()

									    

var navegador =
{
	ns6: (!document.all && document.getElementById),
	ie4: (document.all),
	ns4: (document.layers)
};



/* CONSTRUIMOS A CLASSE PRINCIPAL DO SISTEMA */

/** Construtor da classe Painel
 * @param id parâmetro ID do DIV ser representado. Se o DIV não for encontrado, não faz nada
 * @author Marcelo Coraça e Freitas
 * @timestamp 14/11/2003
 */
function Painel (id)
{
	if (!this.getObjeto (id))
	{
		alert ("Impossivel selecionar objeto "+id);
		return 0;
	} // if

	this.defineLocalizacaoAtual ();
	// para corrigir algum possivel bug do navegador:
	this.movePara (this.X, this.Y);

} // function Painel (id, distanciaDoTopo, slideTime)



/** Procura o objeto HTML
 * @param id parâmetro id do objeto HTML
 * @return 1 se o objeto existir e for assimilado a this.objeto
 * @return 0 se o objeto não existir
 * @author Marcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.getObjeto = function (id)
{
	if (!(tmp = document.getElementById (id)))
		return 0;
	this.objeto = tmp;

	// garante que o objeto possa flutuar:
	this.objeto.style.position = "absolute";
	return 1;
} // Painel.prototype.getObjeto = function (id)



/** Define a localização do painel e assimila a this.Y e this.X (ponto superior esquerdo do mesmo)
 * @author Marcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.defineLocalizacaoAtual = function ()
{
/*
	this.X = 0;
	tmp = this.objeto.style.left;
	for (i = 0; i < tmp.length - 3; i++)
		this.X = this.X*10 + tmp.charAt(i);
	this.Y = 0;
	tmp = this.objeto.style.top;

	for (i = 0; i < tmp.length - 3; i++)
	{
	//	alert (this.Y+" -- "+tmp.charAt(i));
		this.Y = this.Y*10 + (tmp.charAt(i));
	}	
	*/
	
	
	
	this.X = (this.objeto.style.left) ? parseInt (this.objeto.style.left) : 0;
	this.Y = (this.objeto.style.top) ?parseInt (this.objeto.style.top) : 0;	
	//alert (this.X+"x"+this.Y);

//	alert (eval ("1+2"));
} // Painel.prototype.defineLocalizacaoAtual = function ()



/** Define a distancia entre a parte superior do painel e a parte superior da página
 * @return distãncia (> 0 quando abaixo do limite superior da página, < 0 quando acima)
 * @author Marcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.getDistanciaAtualDoTopo = function ()
{
	this.defineLocalizacaoAtual ();
	return (this.Y - janela.getLimiteSuperior ());
} // Painel.prototype.getDistanciaAtualTopo = function ()



/** Define a distancia entre a parte superior do painel e a parte esquerda da página
 * @return distãncia (> 0 quando à direnta do limite da página, < 0 quando à esquerda)
 * @author Marcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.getDistanciaAtualDaEsquerda = function ()
{
	this.defineLocalizacaoAtual ();
	return (this.Y - janela.getLimiteEsquerdo ());
} // Painel.prototype.getDistanciaAtualDaEsquerda = function ()



/** Modifica a coordenada X do painel
 * @param x coordenada futura
 * @return coordenada antiga
 * @author Marcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.setX = function (x)
{
	var old_x = this.X;
	this.X = x;
	this.objeto.style.left = this.X + 'px';
	return old_x;
} // Painel.prototype.setX = function (x)



/** Retorna valor de X atualizado
 * @return this.X
 * @author Marcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.getX = function ()
{
	this.defineLocalizacaoAtual ();
	return this.X;
} // Painel.prototype.getX = function ()



/** Retorna valor se X relativo à rolagem não atualizado
 * @return X relativo
 * @author Marcelo Coraça de Freitas
 * @timestamp 18/11/2003
 */
Painel.prototype.getXRelativo = function ()
{
	return (this.X - janela.getLimiteEsquerdo ());
} // Painel.prototype.getXRelativo = function ()



/** Modifica a coordenada Y do painel
 * @param y coordenada futura
 * @return coordenada antiga
 * @author Marcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.setY = function (y)
{
	var old_y = this.Y;
	this.Y = y;
	this.objeto.style.top = this.Y + 'px';
	return old_y;
} // Painel.prototype.setY = function (y)



/** Retorna valor de Y atualizado
 * @return this.Y
 * @author Marcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.getY = function ()
{
	this.defineLocalizacaoAtual ();
	return this.Y;
} // Painel.prototype.getY = function ()  

/** Retorna valor de Y relativo à rolagem não atualizado
 * @return Y relativo
 * @author Marcelo Coraça de Freitas
 * @timestamp 18/11/2003
 */
Painel.prototype.getYRelativo = function ()
{
	return (this.Y - janela.getLimiteSuperior ());
} // Painel.prototype.getYRelativo = function ()



Painel.prototype.getAltura = function ()
{
	return parseInt (this.objeto.style.height);
}

Painel.prototype.getLargura = function ()
{
	return parseInt (this.objeto.style.width);
}

/** Move o painel para posição absoluta
 * @param x coordenada (em pixels) do lado esquerdo
 * @param y coordenada (em pixels) do limite superior
 * @author Marcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.movePara = function (x, y)
{
	this.setX (x);
	this.setY (y);
} // Painel.prototype.movePara = function (x, y)



/** Move o painel para posição relativa
 * @param ac_x acrecimo x
 * @param ac_y acrecimo y
 * @author Marcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.move = function (ac_x, ac_y)
{
	this.defineLocalizacaoAtual ();
	this.movePara (this.X + ac_x, this.Y + ac_y);
} // Painel.prototype.move = function (ac_x, ac_y)


/* TODO: continuar barato da flutuação::

/** torna o painel flutuante e acompanhando a janela
 * @param nomeObjeto nome do objeto (JavaScript) a ser usado
 * @param distanciaDaEsquerda a distancia, em pixels, que o painel deve ficar do limite esquerdo da janela
 * @param distanciaDoTopo a distancia, em pixels, que o painel deve ficar do topo
 * @param intervaloParaAlinhar tempo que o painel levará para começar a escorregar na tela (em ms)
 * @author Marcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.flutuar = function (nomeObjeto, distanciaDaEsquerda, distanciaDoTopo, intervaloParaAlinhar)
{
	this.distanciaDaEsquerda = distanciaDaEsquerda;
	this.distanciaDoTopo = distanciaDoTopo;
	this.intervaloParaAlinhar = intervaloParaAlinhar;

	this.nomeObjeto = nomeObjeto;

	d = new Date ();
	this.ultimaInteracao = d.getTime ();


	window.setInterval ("Painel_flutuante ("+this.nomeObjeto+")", 10);
} // Painel.prototype.flutuar = function ()



	/** define se deve fazer o painel alinhar ou não
	 * @return true caso sim e false caso não
	 * @author Marcelo Coraça de Freitas
	 * @timestamp 14/11/2003
	 */
	Painel.prototype.iniciaAnimacao = function ()
	{
		this.defineLocalizacaoAtual ();

		d = new Date ();
		
		

		if (	this.getXRelativo () <= this.distanciaDaEsquerda + 1	&& 
			this.getXRelativo () >= this.distanciaDaEsquerda - 1	&&
			this.getYRelativo () <= this.distanciaDoTopo + 1	&&
			this.getYRelativo () >= this.distanciaDoTopo - 1	)
		{
			this.ultimaInteracao = d.getTime ();
			return 0;
		}
		
		if (d.getTime () - this.ultimaInteracao < this.intervaloParaAlinhar)
		{
			return 0;
		}
		return 1;
	} // Painel.prototype.iniciaAnimacao = function ()

	/** Alinha o painel, animando-o.
	 * @author Marcelo coraça de Freitas
	 * @timestamp 18/11/2003
	 */
	Painel.prototype.alinhar = function ()
	{
		d = new Date ();


		zX = this.distanciaDaEsquerda - this.getXRelativo ();
		zY = this.distanciaDoTopo - this.getYRelativo ();


		regX = parseInt (Math.abs (((zX - this.getXRelativo ()) / (janela.getWidth () / 3))));
		regY = parseInt (Math.abs (((zY - this.getYRelativo ()) / (janela.getHeight () / 3))));

				
		
		moveX = (zX > 1) ? ((zX % 10) + 1) : ((zX < 1) ? ((zX % 10) - 1) : 0);
		moveY = (zY > 1) ? ((zY % 10) + 1) : ((zY < 1) ? ((zY % 10) - 1) : 0);
		
		moveX *= (regX > 1) ? regX + 1: 1;
		moveY *= (regY > 1) ? regY + 1: 1;
		
		this.move (moveX, moveY);
	} // Painel.prototype.alinhar = function ()
	



/** Esconde painel
 * @author Martcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.esconde = function ()
{
	this.objeto.style.visibility = "hidden"
} // Painel.prototype.esconde = function ()


/** Torna o painel visivel
 * @author Marcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.mostra = function ()
{
	this.objeto.style.visibility = "visible"
} // Painel.prototype.mostra = function ()



/** Escuta movimentos da janela para animar o painel;
 * @param obj painel a ser animado
 * @author Marcelo Coraça de Freitas
 * @timestamp 18/11/2003
 */
function Painel_flutuante (obj)
{
	if (obj.iniciaAnimacao ()){
		obj.alinhar ();
	}
	
} // Painel_flutuante (obj)

 

 

 

E ESSE É O SCRIPT MODIFICADO NAS LINHAS 15 A 20...

 

 

/* DEFINIMOS OS OBJETOS navegador e janela QUE SERÁ USADO DIVERSAS VEZES */

var navegador =
{
	ns6: (!document.all && document.getElementById),
	ie4: (document.all),
	ns4: (document.layers)
};


janela = {
}
janela.getLimiteSuperior = function ()
{
	if (navegador.ie4)
		return document.documentElement.scrollTop;
	if (scrollY<700){
	return scrollY;
	}else{
		return scrollY-100;
	}

}
janela.getLimiteEsquerdo = function ()
{
	if (navegador.ie4)
		return document.documentElement.scrollLeft;
	return 0;
}

/**
 * Retorna altura da área util da janela.
 * @return altura da área util da janela
 * @author Marcelo C. de Freitas
 * @timestamp 14/11/2003
*/
janela.getHeight = function ()
{
	if (navegador.ns4 || navegador.ns6)
		return window.innerHeight;
	else if (navegador.ie4)
		return document.body.clientHeight;
	else
		alert ("Navegador não suportado!");
} // function getHeight ()

/**
 * Retorna largura da área util da janela.
 * @return largura da área util da janela
 * @author Marcelo C. de Freitas
 * @timestamp 14/11/2003
 */
janela.getWidth = function () {
	if (navegador.ns4 || navegador.ns6)
		return window.innerWidth;
	else if (navegador.ie4)
		return document.body.clientWidth;
	else
		alert ("Navegador não suportado!");
} // function getWidth ()

									    

var navegador =
{
	ns6: (!document.all && document.getElementById),
	ie4: (document.all),
	ns4: (document.layers)
};



/* CONSTRUIMOS A CLASSE PRINCIPAL DO SISTEMA */

/** Construtor da classe Painel
 * @param id parâmetro ID do DIV ser representado. Se o DIV não for encontrado, não faz nada
 * @author Marcelo Coraça e Freitas
 * @timestamp 14/11/2003
 */
function Painel (id)
{
	if (!this.getObjeto (id))
	{
		alert ("Impossivel selecionar objeto "+id);
		return 0;
	} // if

	this.defineLocalizacaoAtual ();
	// para corrigir algum possivel bug do navegador:
	this.movePara (this.X, this.Y);

} // function Painel (id, distanciaDoTopo, slideTime)



/** Procura o objeto HTML
 * @param id parâmetro id do objeto HTML
 * @return 1 se o objeto existir e for assimilado a this.objeto
 * @return 0 se o objeto não existir
 * @author Marcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.getObjeto = function (id)
{
	if (!(tmp = document.getElementById (id)))
		return 0;
	this.objeto = tmp;

	// garante que o objeto possa flutuar:
	this.objeto.style.position = "absolute";
	return 1;
} // Painel.prototype.getObjeto = function (id)



/** Define a localização do painel e assimila a this.Y e this.X (ponto superior esquerdo do mesmo)
 * @author Marcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.defineLocalizacaoAtual = function ()
{
/*
	this.X = 0;
	tmp = this.objeto.style.left;
	for (i = 0; i < tmp.length - 3; i++)
		this.X = this.X*10 + tmp.charAt(i);
	this.Y = 0;
	tmp = this.objeto.style.top;

	for (i = 0; i < tmp.length - 3; i++)
	{
	//	alert (this.Y+" -- "+tmp.charAt(i));
		this.Y = this.Y*10 + (tmp.charAt(i));
	}	
	*/
	
	
	
	this.X = (this.objeto.style.left) ? parseInt (this.objeto.style.left) : 0;
	this.Y = (this.objeto.style.top) ?parseInt (this.objeto.style.top) : 0;	
	//alert (this.X+"x"+this.Y);

//	alert (eval ("1+2"));
} // Painel.prototype.defineLocalizacaoAtual = function ()



/** Define a distancia entre a parte superior do painel e a parte superior da página
 * @return distãncia (> 0 quando abaixo do limite superior da página, < 0 quando acima)
 * @author Marcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.getDistanciaAtualDoTopo = function ()
{
	this.defineLocalizacaoAtual ();
	return (this.Y - janela.getLimiteSuperior ());
} // Painel.prototype.getDistanciaAtualTopo = function ()



/** Define a distancia entre a parte superior do painel e a parte esquerda da página
 * @return distãncia (> 0 quando à direnta do limite da página, < 0 quando à esquerda)
 * @author Marcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.getDistanciaAtualDaEsquerda = function ()
{
	this.defineLocalizacaoAtual ();
	return (this.Y - janela.getLimiteEsquerdo ());
} // Painel.prototype.getDistanciaAtualDaEsquerda = function ()



/** Modifica a coordenada X do painel
 * @param x coordenada futura
 * @return coordenada antiga
 * @author Marcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.setX = function (x)
{
	var old_x = this.X;
	this.X = x;
	this.objeto.style.left = this.X + 'px';
	return old_x;
} // Painel.prototype.setX = function (x)



/** Retorna valor de X atualizado
 * @return this.X
 * @author Marcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.getX = function ()
{
	this.defineLocalizacaoAtual ();
	return this.X;
} // Painel.prototype.getX = function ()



/** Retorna valor se X relativo à rolagem não atualizado
 * @return X relativo
 * @author Marcelo Coraça de Freitas
 * @timestamp 18/11/2003
 */
Painel.prototype.getXRelativo = function ()
{
	return (this.X - janela.getLimiteEsquerdo ());
} // Painel.prototype.getXRelativo = function ()



/** Modifica a coordenada Y do painel
 * @param y coordenada futura
 * @return coordenada antiga
 * @author Marcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.setY = function (y)
{
	var old_y = this.Y;
	this.Y = y;
	this.objeto.style.top = this.Y + 'px';
	return old_y;
} // Painel.prototype.setY = function (y)



/** Retorna valor de Y atualizado
 * @return this.Y
 * @author Marcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.getY = function ()
{
	this.defineLocalizacaoAtual ();
	return this.Y;
} // Painel.prototype.getY = function ()  

/** Retorna valor de Y relativo à rolagem não atualizado
 * @return Y relativo
 * @author Marcelo Coraça de Freitas
 * @timestamp 18/11/2003
 */
Painel.prototype.getYRelativo = function ()
{
	return (this.Y - janela.getLimiteSuperior ());
} // Painel.prototype.getYRelativo = function ()



Painel.prototype.getAltura = function ()
{
	return parseInt (this.objeto.style.height);
}

Painel.prototype.getLargura = function ()
{
	return parseInt (this.objeto.style.width);
}

/** Move o painel para posição absoluta
 * @param x coordenada (em pixels) do lado esquerdo
 * @param y coordenada (em pixels) do limite superior
 * @author Marcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.movePara = function (x, y)
{
	this.setX (x);
	this.setY (y);
} // Painel.prototype.movePara = function (x, y)



/** Move o painel para posição relativa
 * @param ac_x acrecimo x
 * @param ac_y acrecimo y
 * @author Marcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.move = function (ac_x, ac_y)
{
	this.defineLocalizacaoAtual ();
	this.movePara (this.X + ac_x, this.Y + ac_y);
} // Painel.prototype.move = function (ac_x, ac_y)


/* TODO: continuar barato da flutuação::

/** torna o painel flutuante e acompanhando a janela
 * @param nomeObjeto nome do objeto (JavaScript) a ser usado
 * @param distanciaDaEsquerda a distancia, em pixels, que o painel deve ficar do limite esquerdo da janela
 * @param distanciaDoTopo a distancia, em pixels, que o painel deve ficar do topo
 * @param intervaloParaAlinhar tempo que o painel levará para começar a escorregar na tela (em ms)
 * @author Marcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.flutuar = function (nomeObjeto, distanciaDaEsquerda, distanciaDoTopo, intervaloParaAlinhar)
{
	this.distanciaDaEsquerda = distanciaDaEsquerda;
	this.distanciaDoTopo = distanciaDoTopo;
	this.intervaloParaAlinhar = intervaloParaAlinhar;

	this.nomeObjeto = nomeObjeto;

	d = new Date ();
	this.ultimaInteracao = d.getTime ();


	window.setInterval ("Painel_flutuante ("+this.nomeObjeto+")", 10);
} // Painel.prototype.flutuar = function ()



	/** define se deve fazer o painel alinhar ou não
	 * @return true caso sim e false caso não
	 * @author Marcelo Coraça de Freitas
	 * @timestamp 14/11/2003
	 */
	Painel.prototype.iniciaAnimacao = function ()
	{
		this.defineLocalizacaoAtual ();

		d = new Date ();
		
		

		if (	this.getXRelativo () <= this.distanciaDaEsquerda + 1	&& 
			this.getXRelativo () >= this.distanciaDaEsquerda - 1	&&
			this.getYRelativo () <= this.distanciaDoTopo + 1	&&
			this.getYRelativo () >= this.distanciaDoTopo - 1	)
		{
			this.ultimaInteracao = d.getTime ();
			return 0;
		}
		
		if (d.getTime () - this.ultimaInteracao < this.intervaloParaAlinhar)
		{
			return 0;
		}
		return 1;
	} // Painel.prototype.iniciaAnimacao = function ()

	/** Alinha o painel, animando-o.
	 * @author Marcelo coraça de Freitas
	 * @timestamp 18/11/2003
	 */
	Painel.prototype.alinhar = function ()
	{
		d = new Date ();


		zX = this.distanciaDaEsquerda - this.getXRelativo ();
		zY = this.distanciaDoTopo - this.getYRelativo ();


		regX = parseInt (Math.abs (((zX - this.getXRelativo ()) / (janela.getWidth () / 3))));
		regY = parseInt (Math.abs (((zY - this.getYRelativo ()) / (janela.getHeight () / 3))));

				
		
		moveX = (zX > 1) ? ((zX % 100) + 1) : ((zX < 1) ? ((zX % 100) - 1) : 0);
		moveY = (zY > 1) ? ((zY % 100) + 1) : ((zY < 1) ? ((zY % 100) - 1) : 0);
		
		moveX *= (regX > 1) ? regX + 1: 1;
		moveY *= (regY > 1) ? regY + 1: 1;
		
		this.move (moveX, moveY);
	} // Painel.prototype.alinhar = function ()
	



/** Esconde painel
 * @author Martcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.esconde = function ()
{
	this.objeto.style.visibility = "hidden"
} // Painel.prototype.esconde = function ()


/** Torna o painel visivel
 * @author Marcelo Coraça de Freitas
 * @timestamp 14/11/2003
 */
Painel.prototype.mostra = function ()
{
	this.objeto.style.visibility = "visible"
} // Painel.prototype.mostra = function ()



/** Escuta movimentos da janela para animar o painel;
 * @param obj painel a ser animado
 * @author Marcelo Coraça de Freitas
 * @timestamp 18/11/2003
 */
function Painel_flutuante (obj)
{
	if (obj.iniciaAnimacao ()){
		obj.alinhar ();
	}
	
} // Painel_flutuante (obj)

 

 

 

aLGUEM PODE ME AJUDAR A FAZER FUNCIONAR NO IE...

 

ai na minha página eu chamo assim:

 

 

<script language="JavaScript" type="text/javascript">  
   
   if (screen.width <= 1024) {
	   
	   document.write("<div id=anuncieg>"); 
	} 	

	if (screen.width >= 1280) {
	   
	   document.write("<div id=anuncieg2>");
	} 

	
   </script>  
   
<div id="anuncie">

  <object type='application/x-shockwave-flash' data='banner.swf' width='130' height='580'>
<param name='movie' value='banner.swf' />
</object>


</div>
<script type="text/javascript" src="bannerFlutuante.js"> </script>
  <script type="text/javascript">
var painel = new Painel ("anuncie");			
		painel.flutuar ('painel', 0, 0, 1);
swfobject.registerObject("FlashID");
  </script>

 

 

 

O SITE É ESTE AQUI E VOCÊS PODEM TER UMA NOÇÃO, SÓ TA ROLANDO NO FIREFOX

 

www.sergiocascais.com.br/gimacon

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, você fez tudo isso aí só pro banner rolar com a página?

 

Faz com css, só 1 linha de código e funciona em todos os navegadores

 

style="position:fixed;"

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, você fez tudo isso aí só pro banner rolar com a página?

 

Faz com css, só 1 linha de código e funciona em todos os navegadores

 

style="position:fixed;"
O brother valeu a tentativa, mas eu preciso mesmo de um banner que role na página, que tenha movimento entendeu

aqui esta a página em questão: www.sergiocascais.com.br/gimacon

 

no firefox funciona perfeitamente.. mas no IE ele não se mexe...

 

e olha quanto ao FIXED, acho q você se equivocou ao dizer q funciona em todos os navegadores, ele não funciona no IE 6 não...

 

CONTINUO AGUARDANDO AJUDA!

Compartilhar este post


Link para o post
Compartilhar em outros sites

NA REALIDADE QUERIA FAZER ESSE FUNCIONAR MESMO, PQ EU QUERO O MOVIMENTO DELE SE MEXENDO MESMO COM FIXED EU ATÉ JA FIZ COM JQUERY, MAS O CLIENTE QR COM MOVIMENTO...

 

Parece que o problema não esta no script, descobrir que esta na hora de chamar o div na página.. estou tentando resolver

Compartilhar este post


Link para o post
Compartilhar em outros sites

Com tantos códigos e sem um ambiente de testes é complexo poder ajudar e acertar de primeira, mas os browser, idependente de qual seja são chatos em seus critérios, e ao rodar o seu script o meu internet explorer acusa erro na linha 309 do seu bannerflutuante.js, ao olhar o código vi que você usa

d = new Date ();

 

o internet explorer é sempre chato com declarações direta, e você soltou um espaço entre Date e o ();

 

um principio seria você concertar isso e republicar,

var d = new Date();

 

o mesmo fato se repete em outras linha como 327, 353,

 

 

Quanto ao fato do efeito do banner deslizante, é bem relativo, pois no meu FF ele não tem um efeito deslizando ele simplesmente pula para o topo o que resolveria da mesma forma usando o fixed, porem como você disse o internet explorer nao aceita o "fixed" em sua versão 6.0, mas nesse caso eu digo o seguinte "azar de quem ainda usa o jurassic park, temos que fazer sites para o mundo de hj, não do século passado"

 

 

Quanto ao JQuery, o mesmo usa várias "classes" para animações e elas concerteza ajudariam na sua "missão".

Compartilhar este post


Link para o post
Compartilhar em outros sites

Com tantos códigos e sem um ambiente de testes é complexo poder ajudar e acertar de primeira, mas os browser, idependente de qual seja são chatos em seus critérios, e ao rodar o seu script o meu internet explorer acusa erro na linha 309 do seu bannerflutuante.js, ao olhar o código vi que você usa

d = new Date ();

 

o internet explorer é sempre chato com declarações direta, e você soltou um espaço entre Date e o ();

 

um principio seria você concertar isso e republicar,

var d = new Date();

 

o mesmo fato se repete em outras linha como 327, 353,

 

 

Quanto ao fato do efeito do banner deslizante, é bem relativo, pois no meu FF ele não tem um efeito deslizando ele simplesmente pula para o topo o que resolveria da mesma forma usando o fixed, porem como você disse o internet explorer nao aceita o "fixed" em sua versão 6.0, mas nesse caso eu digo o seguinte "azar de quem ainda usa o jurassic park, temos que fazer sites para o mundo de hj, não do século passado"

 

 

Quanto ao JQuery, o mesmo usa várias "classes" para animações e elas concerteza ajudariam na sua "missão".

 

 

ENGRAÇADO QUE É SÓ UMA QUESTÃO DE ORDEM, MODIFIQUEI A ESTRUTURA NO MEU INDEX ONDE CHAMO A FUNÇÃO E O ERO DESAPARECEU, NÃO TEM UM ERRO NESSAS LINHAS ELE SOME QUANDO EU COLOCO O DIV ROLANTE LOGO EM CIMA COMO PRIMEIRA COISA NO BODY..

 

agora ja resolvi uma parte ele está rolando no IE, porém não estou conseguindo controla onde ele para.. ele para certo onde eu quero no firefoz mas no IE não.. acho q é pq tem propriedades diferentes, mas parece q estou chegando lá..

Compartilhar este post


Link para o post
Compartilhar em outros sites

PROBLEMA RESOLVIDO, ALTEREI AS PRIMEIRAS LINHAS FICANDO DESSE JEITO, ISSO PARA O BANNER PARAR NO LOCAL DESEJADO

 

E PARA O BANNER ROLAR NO IE SÓ FIZ MUDAR A POSIÇÃO DO DIV NO CODIGO FONTE DO INDEX...

 

 

 

 

janela.getLimiteSuperior = function ()
{
	if (navegador.ie4)
	    if(document.documentElement.scrollTop<700)
		{
		return document.documentElement.scrollTop;
		}else {
			return document.documentElement.scrollTop-110
		}
		
	if (scrollY<700){
	return scrollY;
	}
	else{
		scrollY2=scrollY-120;
		return scrollY2;
	}

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.