jueves, 28 de octubre de 2010

Filled Under: ,

Sencilla galería de imágenes con miniaturas – Hipotecario

Para los que les gusta lucirse con los gráficos, ahí va un sistema con algo de JavaScript y por supuesto CSS, para formar una galería que incluye unas miniaturas con las que se podrá acceder a las distintas imágenes de la colección.



Primero de todo, instalamos el estilo. Todo el código que se facilita en esta entrada está redactado para incluirlo todo seguido en un gadget. Tras cada parte, las aclaraciones necesarias para hacer lo mismo pero en las entradas.
style type="text/css"
#gallery { display: none; }
#jgal {padding:0;margin:0;list-style: none; width: 160px; }
#jgal li { opacity: .5;filter:alpha(opacity=50); float: left; display: block; width: 60px; height: 60px; background-position: 50% 50%; cursor: pointer; border: 3px solid #fff; outline: 1px solid #ddd; margin-right: 10px; margin-bottom: 10px; }
#jgal li img { position: absolute; top: 20px; left: 160px; display: none; }
#jgal li.active img { display: block; width:370px; }
#jgal li.active, #jgal li:hover { outline-color: #bbb; opacity: .99;filter:alpha(opacity=99);}
/style

Eldisplay:none; del primerID (#gallery) está pensado para evitar que las imágenes se vean completas antes de que se "monte" la galería (mientras se carga el código). En#jgal determinais el ancho del espacio destinado a las miniaturas; 160px en el ejemplo, para que se muestren en filas de a dos, porque hay que contar el ancho de la miniatura (60px) más los márgenes entre ellas. En#jgal li, fijais el tamaño de las miniaturas (60x60px). Elleft de#jgal li img es para desplazar la imagen grande que se va mostrando y que no se solape con las miniaturas. Hay más propiedades que sólo sirven para el estilo propiamente dicho, como la opacidad y los bordes, que podeis cambiar a vuestro gusto sin problemas.

Para el caso de querer publicar galerías en entradas, lo anterior hay que insertarlo antes de /b:skin para que esté disponible para todas las ocasiones y no tener que introducirlo manualmente en cada post. Previamente habrá que eliminar la primera y la última línea (etiquetas STYLE).

A continuación iría el script:

script type="text/javascript"
//![CDATA[
var gal = {
init : function() {
if (!document.getElementById || !document.createElement || !document.appendChild) return false;
if (document.getElementById('gallery')) document.getElementById('gallery').id = 'jgal';
var li = document.getElementById('jgal').getElementsByTagName('li');
li[0].className = 'active';
for (i=0; ili.length; i++) {
li[i].style.backgroundImage = 'url(' + li[i].getElementsByTagName('img')[0].src + ')';
li[i].title = li[i].getElementsByTagName('img')[0].alt;
gal.addEvent(li[i],'click',function() {
var im = document.getElementById('jgal').getElementsByTagName('li');
for (j=0; jim.length; j++) {
im[j].className = '';
}
this.className = 'active';
});
}
},
addEvent : function(obj, type, fn) {
if (obj.addEventListener) {
obj.addEventListener(type, fn, false);
}
else if (obj.attachEvent) {
obj["e"+type+fn] = fn;
obj[type+fn] = function() { obj["e"+type+fn]( window.event ); }
obj.attachEvent("on"+type, obj[type+fn]);
}
}
}
gal.addEvent(window,'load', function() {
gal.init();
});
//
/script

Básicamente, lo que hace es buscar si existe elID gallery y capturar los distintos elementos de lista que pudieran existir en él. Esos elementos se mostrarán como miniaturas y una función controlará si se hace clic en ellos. En ese caso, al pulsado se le asignará la claseactive y será visible en la zona de ampliación.

Al igual que con el estilo, esta parte se puede poner directamente en la plantilla si lo vamos a usar con frecuencia, en cuyo caso, las comillas dobles de la primera línea, tendrán que cambiarse a comillas simples. A diferencia de aquel, este se insertará antes de /head.

Y para finalizar, la parte HTML. Independientemente de dónde hayamos puesto todo lo anterior, esto se tendrá que teclear justo dónde queremos que se muestre la galería. Si todo lo metimos en un gadget, a continuación. Se trata de una lista normal conid=gallery, metida dentro de unDIV con posición relativa para evitar efectos colaterales de otros posicionamientos pre-existentes.

div style="position:relative;"
ul id="gallery"
liimg src="URL_IMAGEN1" alt="" //li
liimg src="URL_IMAGEN2" alt="" //li
liimg src="URL_IMAGEN3" alt="" //li
liimg src="URL_IMAGEN4" alt="" //li
/ul
/div

Enalt podeis poner el texto que querais relativo a cada imagen y asunto terminado.

Más información (en inglés) enDavid's kitchen.

Actualización: Un nuevo post para construir esto mismo perocon las miniaturas en la parte inferior de la imagen y así poder mostrar con un mayor tamaño la imagen principal.

mesothelioma attorney cell cycle regulation ppt sell structured settlement calculator How to Donate A Car in California structured settlement brokers buyer of structured settlement annuity New social media platforms CAR INSURANCE QUOTES MN new york mesothelioma law firm Better Conference Calls st louis mesothelioma attorney Casino reviews structured annuity settlement WEBEX COSTS life insurance quotes Mobile casino Bankruptcy lawyer Live casino Cheap Car Insurance for Ladies hair removal washington dc Social media strategies workplace accident attorney Donate car for tax credit Asbestos Lawyers cheaper insurance companies primary pulmonary hypertension Motor replacements Donate Your Car for Kids Webex Costs accident attorney in los angeles DONATING A CAR IN MARYLAND Holland Michigan College Photo Christmas cards Motor Insurance Quotes Royalty Free Images Stock BETTER CONFERENCING CALLS semi truck accident lawyers mesothelioma lawyer virginia CAR INSURANCE QUOTES UTAH MET AUTO structured settlement purchasers mesothelioma compensation Online casino Casino Hire php developer automobile accident attorney california motorcycle accident lawyer illinois law lemon houston mesothelioma attorney personal injury firm selling structured settlement domain registration yahoo Royalty free images stock Donate your car Sacramento structered settlement Donate a car in Maryland STRUCTURED ANNUITY SETTLEMENT Donating a car in Maryland Make money online Australia Health Records Personal Health Record Html email business administration masters los angeles motorcycle accident lawyer ONLINE COLLEDGES AUTOMOBILE ACCIDENT ATTORNEY DONATE YOUR CAR FOR KIDS Car Insurance Quotes MN att call conference Online Criminal Justice Degree Hire php developers Best Criminal Lawyers in Arizona online colledges motorcycle lawyer los angeles CAR INSURANCE IN SOUTH DAKOTA Dwi lawyer HOLLAND MICHIGAN COLLEGE Psd to html Massage School Dallas Texas Online Colleges Sell Annuity Payment la personal injury lawyer Cheap car insurance in Virginia mesothelioma lawyer california Dallas Mesothelioma Attorneys Motor Replacements Criminal defense lawyer DUI lawyer maritime lawyer houston Hire php programmers Personal Injury Lawyer business email web hosting Criminal lawyer Service business software Custom Christmas cards Php programmers for hire Auto Mobile Insurance Quote boca raton personal injury attorney Donating used cars to charity Donate Car To Charity CALIFORNIA Seo companies Forex Trading Platform Business finance group Computer science classes online Donate Old Cars to Charity CAR ACCIDENT LAWYERS Paperport promotional code Php programmers Cheap Auto Insurance in VA mesothelioma lawyer asbestos cancer lawsuit DONATE YOUR CAR FOR MONEY firm law mesothelioma Best social media platforms for business Best Seo company donate your car for kids chicago hair laser removal orlando criminal attorney Best social media platforms Social media platforms for business Donate Your Car Sacramento Custom WordPress theme designer Adobe illustrator classes MASSAGE SCHOOL DALLAS TEXAS Donate Car to Charity California Seo services DONATE CARS IN MA Forensics online course washington mesothelioma attorney houston tx auto insurance miami personal injury lawyer Car insurance quotes Utah Business management software how to donate a car in california mesothelioma attorneys Seo company Online Christmas cards donating used cars to charity Psd to WordPress accident car florida lawyer WordPress themes for designers WordPress hosting Neuson Dayton freight lines Car Insurance Quotes Annuity Settlements michigan motorcycle accident lawyer Social media examiner personal injury law firm Social media management auto accident lawyer san francisco Tech school Car insurance quotes Colorado car accident lawyers west palm beach event management security Social media platforms Christmas cards mesothelioma symptoms Proud Italian cook Italian cooking school WordPress theme designers Donate Car for Tax Credit Gas/Electricity refinance with bad credit EMAIL BULK SERVICE mesothelioma trial attorney CHEAP CAR INSURANCE IN VIRGINIA Car Insurance Quotes Colorado Learning adobe illustrator LOW CREDIT LINE CREDIT CARDS Injury Lawyers Donate cars Illinois motorcycle accident lawyer san francisco Social media tools Social media campaigns Mesothelioma Law Firm DONATE YOUR CAR SACRAMENTO benchmark lending MORTGAGE ADVISER pharmacist jobs in chicago Structures Annuity Settlement Donate Cars in MA accident attorneys orange county Auto Accident Attorney sell your structured settlement payments personal injury accident lawyer Dedicated Hosting Dedicated Server Hosting MOTOR REPLACEMENTS Register Free Domains Futuristic Architecture adverse remortgage alabama mesothelioma lawyer colorado mesothelioma lawyers mesothelioma lawyer chicago Online Classes Nunavut Culture Psychic for Free Dayton Freight Lines motorcycle accident attorney sacramento Hard drive Data Recovery Services Donate a Car in Maryland Cheap Domain Registration Hosting Donating a Car in Maryland Donate Cars Illinois Criminal Defense Attorneys Florida email bulk service Car Insurance Quotes Utah Life Insurance Co Lincoln Donate your car for money Futuristic architecture Cheap auto insurance in VA Online Motor Insurance Quotes