Ver Mensaje Individual
  #6 (permalink)  
Antiguo 31/01/2007, 06:39
sergi_climent
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
Re: Transitar color de fondo - Gradientes (de Caricatos)

hola de nuevo,
tengo una duda, a ver, trabajo con php + ajax, y tengo un menu horizontal en la parte superior de la pagina principal, al clickar encima de una opcion de menu el div q hay debajo se actualiza con la inf de la pagina, bueno pues lo q me pasa es con ie, si voy acceciendo en las diferentes paginas, lo q es el difuminar se va prolongando segun el tamaño de la pagina, en firefox no, es decir, solo se ve el difuminar en el tamaño original de a pagina principal...
no ser si me explicado bien. a ver si me podeix echar un cable...

PD: no he conseguido cambiar todo el fondo de pantalla!
con esto ya tendria q cojer el tamaño de la pagina no?
Código:
elemento = document.body;
altura = elemento.clientHeight;
o el body solo ocupa la pequeña tabla q tengo puesta...
si es asi, aun no ser como puedo llenar el fondo de pantalla...
me da = usar javascript, php o lo q sea...

EDITADO: codigo principal de mi pagina default.php
Código HTML:
<?
require("../aut_verifica.inc.php");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
   "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<link rel="stylesheet" type="text/css" href="style/style.css" />
<script language="javascript" src="js/funcions.js"></script>
<script language="javascript" src="js/calendari.js"></script>
<script language="javascript" src="js/isiajax.js"></script>
<script language="javascript" src="js/isixml.js"></script>
</head>
<body onLoad="myajax = new isiAJAX('main', 'cargador'); gradiente('0000FF', 'FFFFFF');" onResize="gradiente('0000FF', 'FFFFFF')">
<!--Imatge q es veu quan carrega una pagina o consulta-->
<div id="cargador">
	<img src="img/loading.gif" alt="load" width="16" height="16"> &nbsp; 
	<a href= "javascript:myajax.Cancel();">
	<img border="0" src="img/cancelar.gif" alt="cancel" width="97" height="16"></a>
</div>
<div id="principal">
<table width="100%">
<tr>
<td>
<!--Menu Principal --> 
<div class="chromestyle" id="chromemenu">
	<ul>
		<li><a href="/maquines/default.php">Home</a></li>
		<li><a href="#" rel="dropmenu1">Maquinas</a></li>
		<li><a href="#" rel="dropmenu2">Averias</a></li>
		<li><a href="#" rel="dropmenu3">Actividades</a></li>
		<li><a href="#" rel="dropmenu4">Rapport</a></li>
		<li><a href="#" rel="dropmenu5">Configuracion</a></li>
	</ul>
</div>
<!--1er Menu desplegable --> 
<div id="dropmenu1" class="dropmenudiv">
	<a href="#">Nueva</a>
	<a href="#">Consulta1</a>
	<a href="#">Consulta2</a>	
	<a href="#">Consulta3</a>	
</div>
<!--2on Menu desplegable --> 
<div id="dropmenu2" class="dropmenudiv" style="width: 150px;">
	<a href="#">Nueva</a>
	<a href="#">Consulta1</a>
	<a href="#">Consulta2</a>	
	<a href="#">Consulta3</a>
</div>
<!--3er Menu desplegable --> 
<div id="dropmenu3" class="dropmenudiv" style="width: 150px;">
	<a href="#">Nueva</a>
	<a href="#">Consulta1</a>
	<a href="#">Consulta2</a>	
	<a href="#">Consulta3</a>
</div>
<!--4art Menu desplegable --> 
<div id="dropmenu4" class="dropmenudiv" style="width: 150px;">
	<a href="#rapport/default.php" onClick="myajax.Link(this.href, 'main')">Nuevo</a>
	<a href="#">Consulta1</a>
	<a href="#">Consulta2</a>	
	<a href="#">Consulta3</a>
</div>
<!--5e Menu desplegable --> 
<div id="dropmenu5" class="dropmenudiv" style="width: 150px;">
	<a href="#">Empresa</a>
	<a href="#">Secciones</a>
	<a href="#">Tipo Maquina</a>
	<a href="#">Fabricante</a>
	<a href="#">Marca</a>
	<a href="#">Modelo</a>
	<a href="#">Usuarios</a>
</div>
<script type="text/javascript">
	cssdropdown.startchrome("chromemenu")
</script>
</td>
</tr>
<tr>
<td><div id="main"><img src="" border="0"></div></td>
</tr>
</table>
</div>
</body>
</html> 
y luego tengo un archivo para la funciones de php y otro con las de javascript.
Js:
Código PHP:
function gradiente(color1color2)    {
    
elemento document.body;
    
altura elemento.clientHeight;
    var 
fondo "URL(funcions/funcions.php?altura=";
    
fondo += altura "&color1=" color1 "&color2=" color2 ")";
    
elemento.style.backgroundImage fondo;
    
elemento.style.backgroundPosition "top";
    
elemento.style.backgroundRepeat "repeat-x";

PHP:
Código PHP:
//DIFUMINAR PAGINA
header("Content-Type: image/png");

function 
elColor($color)    {
    
$red 256 256;
    
$green 256;
    
$blue 1;
    return (
$red $color[0]) + ($green $color[1]) + ($blue $color[2]);
}

function 
losColores($arrayColores)    {
    
$devolver = array();
    for (
$i 0$i count($arrayColores); $i ++)
        
$devolver[$i] = elColor($arrayColores[$i]);
    return 
$devolver;
}

function 
desglose($fondo)    {
    return array(
hexdec($fondo[1]),hexdec($fondo[2]),hexdec($fondo[3]));
}

function 
rgbColor($fondo)    {
    
$red 100;
    
$green 100;
    
$blue 100;
    if( 
eregi"([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})"$fondo$retornar ) )
        return 
$retornar;
    else
        return array(
$fondo$red$green$blue);
}

function 
transitar($color1$color2$pasos) {
    
$devolver = array();
    
$pasos--;
    
$devolver[0] = desglose(rgbColor($color1));
    
$devolver[$pasos] = desglose(rgbColor($color2));
    
$rIni $devolver[0][0];
    
$gIni $devolver[0][1];
    
$bIni $devolver[0][2];

    
$rFin $devolver[$pasos][0];
    
$gFin $devolver[$pasos][1];
    
$bFin $devolver[$pasos][2];

    
$rMed = ($rFin $rIni) / $pasos;
    
$gMed = ($gFin $gIni) / $pasos;
    
$bMed = ($bFin $bIni) / $pasos;

    for (
$i 1$i $pasos$i ++)    {
        
$devolver[$i] = array($rIni round($rMed $i), $gIni round($gMed $i), $bIni round($bMed $i));
    }
    return 
losColores($devolver);
}

if (isset(
$_GET["altura"])) $altura $_GET["altura"];
else 
$altura 2;
$anchura 1;
if (isset(
$_GET["color1"])) $color1 $_GET["color1"];
else 
$color1 "000123";
if (isset(
$_GET["color2"])) $color2 $_GET["color2"];
else 
$color2 "ffabcd";

$fondo1 desglose(rgbColor($color1));
$fondo2 desglose(rgbColor($color2));
$transito transitar($color1$color2$altura);

//$destino = imagecreate($anchura, $altura);
$destino imageCreateTrueColor($anchura$altura);
for (
$i 0$i count($transito); $i ++)
    
imagesetpixel($destino0$i$transito[$i]);
@
imagepng($destino);
imagedestroy($destino); 
saludos y gracias de antemano
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier

Última edición por sergi_climent; 31/01/2007 a las 06:59