MyStream | Designed by WooThemes

Codigos

Muro giratorio para patrocinantes



Flip

Diseñar y codificar una pagina de patrocinantes es parte de la vida de los desarrolladores (por lo menos la vida de un desarrollador con suerte, si es de un sitio personal). Esto, como siempre, sigre algunas reglas. Tienes que conseguir una forma para agregar una gran cantidad de informacion, imagenes y por si fuera poco ordenarlo todo limpiamente, asi que hay que poner un buen enfasis en nuestras publicidades, y no dejarlo solo como un elemento mas del diseño.

Para esto, he conseguido un codigo muy util, gracias a un tweet de bluefaqs, que se logra con PHP, CSS y jQuery (con el jQuery Flip plug-in). El resultado será un codigo para lograr mostrar nuestros patrocinantes o hasta nuestros proyectos.

Paso 1 – HTML

Código:
<div title="Click to flip" class="sponsor">
	<div class="sponsorFlip">
		<img alt="More about google" src="img/sponsors/google.png">
	</div>

	<div class="sponsorData">
		<div class="sponsorDescription">
			The company that redefined web search.
		</div>
		<div class="sponsorURL">
			<a href="http://www.google.com/">http://www.google.com/ </a>
		</div>
	</div>
</div>

La clase .sponsor contiene dos elementos div adicionales. El primero – sponsorFlip – Contiene el logo de la compañia. Cada click que se haga sobre este elemento hará que el efecto Flip se inicie. Y el segundo – sponsorData – Contiene la informacion de la compañia, incluyendo su url.
 


Parte 2 – CSS

 
Código:
body{
	/* Setting default text color, background and a font stack */
	font-size:0.825em;
	color:#666;
	background-color:#fff;
	font-family:Arial, Helvetica, sans-serif;
}

.sponsorListHolder{
	margin-bottom:30px;
}

.sponsor{
	width:180px;
	height:180px;
	float:left;
	margin:4px;

	/* Giving the sponsor div a relative positioning: */
	position:relative;
	cursor:pointer;
}

.sponsorFlip{
	/*  The sponsor div will be positioned absolutely with respect
		to its parent .sponsor div and fill it in entirely */

	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	border:1px solid #ddd;
	background:url("img/background.jpg") no-repeat center center #f9f9f9;
}

.sponsorFlip:hover{
	border:1px solid #999;

	/* CSS3 inset shadow: */
	-moz-box-shadow:0 0 30px #999 inset;
	-webkit-box-shadow:0 0 30px #999 inset;
	box-shadow:0 0 30px #999 inset;
}
.sponsorFlip img{
	/* Centering the logo image in the middle of the .sponsorFlip div */

	position:absolute;
	top:50%;
	left:50%;
	margin:-70px 0 0 -70px;
}

.sponsorData{
	/* Hiding the .sponsorData div */
	display:none;
}

.sponsorDescription{
	font-size:11px;
	padding:50px 10px 20px 20px;
	font-style:italic;
}
.sponsorURL{
	font-size:10px;
	font-weight:bold;
	padding-left:20px;
}

.clear{
	/* This class clears the floats */
	clear:both;
}

Con este CSS nuestro efecto quedará asi.


Parte 3 – PHP

Código:
// Each sponsor is an element of the $sponsors array:

$sponsors = array(
	array('facebook','The biggest social..','http://www.facebook.com/'),
	array('adobe','The leading software de..','http://www.adobe.com/'),
	array('microsoft','One of the top software c..','http://www.microsoft.com/'),
	array('sony','A global multibillion electronics..','http://www.sony.com/'),
	array('dell','One of the biggest computer develo..','http://www.dell.com/'),
	array('ebay','The biggest online auction and..','http://www.ebay.com/'),
	array('digg','One of the most popular web 2.0..','http://www.digg.com/'),
	array('google','The company that redefined w..','http://www.google.com/'),
	array('ea','The biggest computer game manufacturer.','http://www.ea.com/'),
	array('mysql','The most popular open source dat..','http://www.mysql.com/'),
	array('hp','One of the biggest computer manufacturers.','http://www.hp.com/'),
	array('yahoo','The most popular network of so..','http://www.yahoo.com/'),
	array('cisco','The biggest networking and co..','http://www.cisco.com/'),
	array('vimeo','A popular video-centric social n..','http://www.vimeo.com/'),
	array('canon','Imaging and optical technology ma..','http://www.canon.com/')
);

// Randomizing the order of sponsors:

shuffle($sponsors);
// Looping through the array:

foreach($sponsors as $company)
{
	echo'
		<div class="sponsor" title="Click to flip">
			<div class="sponsorFlip">
				<img src="img/sponsors/'.$company[0].'.png" alt="More about '.$company[0].'" />
			</div>

			<div class="sponsorData">
				<div class="sponsorDescription">
					'.$company[1].'
				</div>
				<div class="sponsorURL">
					<a href="'.$company[2].'">'.$company[2].'</a>
				</div>
			</div>
		</div>

	';
}

Con este codigo PHP, haremos que las imagenes de los anunciantes se muesten en orden aleatorio.

Paso 4 – jQuery

Código:
$(document).ready(function(){
	/* The following code is executed once the DOM is loaded */

	$('.sponsorFlip').bind("click",function(){

		// $(this) point to the clicked .sponsorFlip element (caching it in elem for speed):

		var elem = $(this);

		// data('flipped') is a flag we set when we flip the element:

		if(elem.data('flipped'))
		{
			// If the element has already been flipped, use the revertFlip method
			// defined by the plug-in to revert to the default state automatically:

			elem.revertFlip();

			// Unsetting the flag:
			elem.data('flipped',false)
		}
		else
		{
			// Using the flip method defined by the plugin:

			elem.flip({
				direction:'lr',
				speed: 350,
				onBefore: function(){
					// Insert the contents of the .sponsorData div (hidden
					// from view with display:none) into the clicked
					// .sponsorFlip div before the flipping animation starts:

					elem.html(elem.siblings('.sponsorData').html());
				}
			});

			// Setting the flag:
			elem.data('flipped',true);
		}
	});

});


Ejemplo

Descargar

Fuente: Tutorialzine



PHP, jQuery, Muro giratorio, CSS

#header {display: none;}
Este sitio web fue creado de forma gratuita con PaginaWebGratis.es. ¿Quieres también tu sitio web propio?
Registrarse gratis