a href nefunguje

Programovacie jazyky, rady, poradňa...
Marcus0007
Novice
Novice
Príspevky: 7
Registrovaný: 21 nov 2006, 14:29

a href nefunguje

Príspevok od používateľa Marcus0007 »

Ahojte, prosim vás viete mi poradit? stránka http://umarka.maliarnitra.sk/ a hore v menu je že donáška burgrov tam mám nastavený klasický kód <li><a href="burgre.pdf" target="_blank">Donáška hamburgerov</a></li> aby mi to otvorilo v novom okne pdf súbor, lenže klikam a klikám a nechce to otvoriť. Za radu vopred Ďakujem.
Michaelo
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 6177
Registrovaný: 16 júl 2008, 20:29
Bydlisko: Pri PC
Kontaktovať používateľa:

Re: a href nefunguje

Príspevok od používateľa Michaelo »

Blokuje ti ho vlastny javascript ktory si zoberie obsah hrefu (ktory ma byt ID elementu kam ma scrollnut), returne false a nascrolluje tam.

http://umarka.maliarnitra.sk/javascript/main.js

Kód: Vybrať všetko

	$('.one-page .mainnav ul > li > a').on('click',function() {
		 var anchor = $(this).attr('href').split('#')[1];
		 var headerHeight = 0;
		 var headerSmall = 80;
		 
		 if ( $( window).scrollTop() != 0 ) {
		 	headerSmall = 0;
		 }

		 if ( anchor ) {
			if ( $('#'+anchor).length > 0 ) {
			   if ( $('.header-sticky').length > 0 && largeScreen ) {
				  headerHeight = $('#header').outerHeight();
			   }
			   var target = $('#'+anchor).offset().top - headerHeight + headerSmall + 1;
			   $('html,body').animate({scrollTop: target}, 1000, 'easeInOutExpo');
			}
		 }
		 return false;
	  }); // click on one-page menu
	  
	  $('.one-page .mainnav > ul > li > a').on( 'click', function() {
		 $( this ).addClass('active').parent().siblings().children().removeClass('active');
	  });
	};
Pokial tam nechces davat len anchory, tak by som to upravil takto:

Kód: Vybrať všetko

	$('.one-page .mainnav ul > li > a').on('click',function() {
		 var anchor = $(this).attr('href').split('#')[1];
		 var headerHeight = 0;
		 var headerSmall = 80;
		 
		 if ( $( window).scrollTop() != 0 ) {
		 	headerSmall = 0;
		 }

		 if ( anchor ) {
			if ( $('#'+anchor).length > 0 ) {
			   if ( $('.header-sticky').length > 0 && largeScreen ) {
				  headerHeight = $('#header').outerHeight();
			   }
			   var target = $('#'+anchor).offset().top - headerHeight + headerSmall + 1;
			   $('html,body').animate({scrollTop: target}, 1000, 'easeInOutExpo');
			}
		 	return false;
		 }
	  }); // click on one-page menu
	  
	  $('.one-page .mainnav > ul > li > a').on( 'click', function() {
		 $( this ).addClass('active').parent().siblings().children().removeClass('active');
	  });
	};
Marcus0007
Novice
Novice
Príspevky: 7
Registrovaný: 21 nov 2006, 14:29

Re: a href nefunguje

Príspevok od používateľa Marcus0007 »

a vieš mi nejak prosim poradiť? ako sa dá spraviť výnimka len na tento jeden href?
Michaelo
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 6177
Registrovaný: 16 júl 2008, 20:29
Bydlisko: Pri PC
Kontaktovať používateľa:

Re: a href nefunguje

Príspevok od používateľa Michaelo »

Mas tam upraveny kod, tym ze presunies return false do podmienky if (anchor) spravis to, ze ak dany link neobsahuje hash tag (#), po kliknuti nan ta presmeruje na danu URL, ak ale obsahuje #, tak spravi co ma (scroll alebo nic) a zabrani defaultnemu spravaniu (otvoreniu URL).
Marcus0007
Novice
Novice
Príspevky: 7
Registrovaný: 21 nov 2006, 14:29

Re: a href nefunguje

Príspevok od používateľa Marcus0007 »

ďakujem funguje!
Napísať odpoveď