Ir para conteúdo

POWERED BY:

Arquivado

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

Leandro Persi

Problema com link no Jquey.

Recommended Posts

Boa tarde.

Estou trabalhando com uma galeria de imagens do Jquey em um projeto mas estou com problemas. As imagens serão lincadas para uma outra páginma mas o link não "pega", eu insiro o link na imagem mas quando clico não acontece nada.

Algum colega poderia me ajudar com isso?

 

Obs.: Quando paro com a seta sobre a imagem lincada, ao invés de aparecer (ba barra de status do navegador) o endereço do link, aparece o endereço da imagem.

 

Segue abaixo os Javascripts

 

jquery.scrollShow.js

/**
* jQuery.ScrollShow - Scrolling Slideshow.
* Copyright (c) 2007 Ariel Flesler - aflesler(at)gmail(dot)com
* Licensed under GPL license (http://www.opensource.org/licenses/gpl-license.php).
* Date: 10/30/2007
* @author Ariel Flesler
* @version 0.7
*
* @id jQuery.fn.scrollShow
* @param {Object} settings Hash of settings (detailed below).
* @return {jQuery} Returns the same jQuery object, for chaining.
**/
(function( $ ){

var defaults = {
	elements:'img',//elements selector (relative to view)
	itemSize:{
		height:200,

		},
	view:null,//container of the elements, the one to fix the width.
	navigators:null,//selector to the elements to navigate the slideshow.
	navigationMode:'s',//sequential, random, localscroll
	speed:600,//speed of transition, 1 for no-animation
	wrappers:'simple',//simple,resize,crop,link
	circular:false,//should the slideshow rewind/advance on the extremes ?.
	easing:'linear',//easing equation
	axis:'x',//axis to displace the slideshow
	margin:true,//take margin in account?
	start:null, //force the scroll to start at some position element.
	setWidth:false//whether to calculate and set, the overall width of the slideshow.
};

function wrap( $els, type, size ){//wrap the photos with several different wrappers.
	switch( type ){
		case 'crop': $els = $els.wrap('<div class="jq-ss-crop">').parent().css('overflow','hidden');					
		case 'resize': return $els.css( size );
		case 'simple': return $els.wrap('<div class="jq-ss-simple">').parent();
		case 'link': 
			if( $els.is('img') )
				return $els.wrap('<a target="_blank" class="jq-ss-link">').parent().each(function(){
					this.href = this.firstChild.src;
				});
		default: return $els;					
	}
};

$.fn.scrollShow = function( settings ){
	settings = $.extend( {}, defaults, settings );

	return this.each(function(){
		var 
			widget	  = this,
			$view	  = settings.view ? $(settings.view, this) : this,
			$elements = $(settings.elements, $view),
			limit	  = $elements.length,
			active	  = 0;

		$.each( settings.wrappers.split(/\s*,\s*/), function( i, wrapper ){
			$elements = wrap( $elements, wrapper, settings.itemSize );													 
		});			
		$elements.css( settings.itemSize );//ensure the outer elements have fixed size.

		if( !settings.navigators ){//this shouldn't get to happen
			settings.navigators = '';
			settings.navigationMode = 'r';
		}

		if( settings.navigators.constructor != Array )
			settings.navigators = [settings.navigators];

		$.each( settings.navigationMode.split(''), function( i, type ){
			switch( type.charAt(0) ){
				case 's'://sequential navigation
					$(settings.navigators[i],widget)
						.eq(0).bind('click', { dir: -1 }, sequential ).end()
						.eq(1).bind('click', { dir: +1 }, sequential );
				break;
				case 'r'://random navigation
					var $nav = $(settings.navigators[i] || $elements, widget),
						ratio = $elements.length / $nav.length;
					if( ratio === Infinity ) return;//no navigator found
					$nav.each(function( pos ){
						$(this).bind( 'click', { pos: Math.floor(ratio*pos) }, random );												  
					});
				break;
			}
		});				

		(function( $e, w ){					  
			var imgw = ($e.width() + attrs('margin') + attrs('padding') + attr('border'));

			do w -= imgw;
			while( w > 0 && limit-- );//find the last element we can scroll To.

			if( !settings.setWidth ) return;

			do{
				$e = $e.parent();
				if( $e[0] == $view[0] )
					return;
			}while( $e.length > 1 );
			$e.width( imgw * $elements.length  );//if there's a container for the elements, calculate it's width.

		})( $elements, $view.width() );

		if( settings.start != null )
			random( settings.start );

		function attrs( name ){
			return attr(name+'Left') + attr(name+'Right');
		};
		function attr( name ){
			return parseInt($elements.css(name)) || 0;	
		};

		function sequential( event ){
			event.data.pos = active + event.data.dir;
			return random( event );
		};

		function random( event ){
			var pos = typeof event == 'number' ? event : event.data.pos;
			if( pos < 0 )
				pos = active == 0 && settings.circular ? limit : 0;
			else if( pos > limit )
				pos = active == limit && settings.circular ? 0 : limit;

			$view.stop().scrollTo( $elements[pos], settings );
			active = pos;
			return false;
		};				
	});
};

})( jQuery );

 

jquery.scrollShow-min.JS

/**
* jQuery.ScrollShow - Scrolling Slideshow.
* Copyright (c) 2007 Ariel Flesler - aflesler(at)gmail(dot)com
* Licensed under GPL license (http://www.opensource.org/licenses/gpl-license.php).
* Date: 10/30/2007
* @author Ariel Flesler
* @version 0.7
**/
(function($){var f={elements:'img',itemSize:{height:200,width:170},view:null,navigators:null,navigationMode:'s',speed:600,wrappers:'simple',circular:false,easing:'linear',axis:'x',margin:true,start:null,setWidth:false};function wrap(a,b,c){switch(B){case'crop':a=a.wrap('<div class="jq-ss-crop">').parent().css('overflow','hidden');case'resize':return a.css(c);case'simple':return a.wrap('<div class="jq-ss-simple">').parent();case'link':if(a.is('img'))return a.wrap('<a target="_blank" class="jq-ss-link">').parent().each(function(){this.href=this.firstChild.src});default:return a}};$.fn.scrollShow=function(e){e=$.extend({},f,e);return this.each(function(){var d=this,$v=e.view?$(e.view,this):this,$e=$(e.elements,$v),l=$e.length,q=0;$.each(e.wrappers.split(/\s*,\s*/),function(i,a){$e=wrap($e,a,e.itemSize)});$e.css(e.itemSize);if(!e.navigators){e.navigators='';e.navigationMode='r'}if(e.navigators.constructor!=Array)e.navigators=[e.navigators];$.each(e.navigationMode.split(''),function(i,B){switch(b.charAt(0)){case's':$(e.navigators[i],d).eq(0).bind('click',{dir:-1},sequential).end().eq(1).bind('click',{dir:+1},sequential);break;case'r':var c=$(e.navigators[i]||$e,d),r=$e.length/c.length;if(r===Infinity)return;c.each(function(a){$(this).bind('click',{pos:Math.floor(r*a)},random)});break}});(function(a,w){var b=(a.width()+attrs('margin')+attrs('padding')+attr('border'));do w-=b;while(w>0&&l--);if(!e.setWidth)return;do{a=a.parent();if(a[0]==$v[0])return}while(a.length>1);a.width(b*$e.length)})($e,$v.width());if(e.start!=null)random(e.start);function attrs(a){return attr(a+'Left')+attr(a+'Right')};function attr(a){return parseInt($e.css(a))||0};function sequential(a){a.data.pos=q+a.data.dir;return random(a)};function random(a){var b=typeof a=='number'?a:a.data.pos;if(b<0)b=q==0&&e.circular?l:0;else if(b>l)b=q==l&&e.circular?0:l;$v.stop().scrollTo($e[b],e);q=b;return false}})}})(jQuery);

 

jquery.scrollTo-min.JS

/**
* jQuery.ScrollTo - Easy element scrolling using jQuery.
* Copyright (c) 2007 Ariel Flesler - aflesler(at)gmail(dot)com
* Licensed under GPL license (http://www.opensource.org/licenses/gpl-license.php).
* Date: 10/29/2007
* @author Ariel Flesler
* @version 1.2.2
* Compatible with jQuery 1.2.1, tested on Firefox 2.0.0.7, and IE 6, both on Windows.
**/
(function($){$.scrollTo=function(a,B){return $('html,body').scrollTo(a,B)};$.fn.scrollTo=function(e,f){f=$.extend({axis:'y',speed:1},f||{});if(f.axis.length!=2)f.queue=false;if(f.queue)f.speed=Math.ceil(f.speed/2);return this.each(function(){var d=$(this),t=e,k,l,u={};switch(typeof t){case'string':if(/^([+-]=)?\d+(px)?$/.test(t))break;t=$(t,this);case'object':k=$(t).offset()}$.each(f.axis.split(''),parse);animate(f.onAfter);function parse(i,a){var b=a=='x'?'Left':'Top',p=b.toLowerCase();var c='scroll'+b;u[c]=k?k[p]+(d.is('html,body')?0:d[0][c]-d.offset()[p]):t;if(f.margin&&typeof t=='object')u[c]-=parseInt($(t).css('margin'+B))||0;if(!i&&f.queue){if(d[0][c]!=u[c])animate(f.onAfterFirst);delete u[c]}};function animate(a){d.animate(u,f.speed,f.easing,a)}})}})(jQuery);

Compartilhar este post


Link para o post
Compartilhar em outros sites

Leandro, sempre que for postar código, use a tag code code.png, facilita a leitura e organização da postagem. ;)

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.