Team:Queens Canada/Intro/Team
From 2011.igem.org
Line 22: | Line 22: | ||
</style> | </style> | ||
+ | |||
+ | <!--smooth scrolling--> | ||
+ | <link rel="stylesheet" href="css/style.css" /> | ||
+ | |||
+ | <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.min.js"></script> | ||
+ | <script> | ||
+ | $(function() { | ||
+ | |||
+ | function filterPath(string) { | ||
+ | return string | ||
+ | .replace(/^\//,'') | ||
+ | .replace(/(index|default).[a-zA-Z]{3,4}$/,'') | ||
+ | .replace(/\/$/,''); | ||
+ | } | ||
+ | |||
+ | var locationPath = filterPath(location.pathname); | ||
+ | var scrollElem = scrollableElement('html', 'body'); | ||
+ | |||
+ | // Any links with hash tags in them (can't do ^= because of fully qualified URL potential) | ||
+ | $('a[href*=#]').each(function() { | ||
+ | |||
+ | // Ensure it's a same-page link | ||
+ | var thisPath = filterPath(this.pathname) || locationPath; | ||
+ | if ( locationPath == thisPath | ||
+ | && (location.hostname == this.hostname || !this.hostname) | ||
+ | && this.hash.replace(/#/,'') ) { | ||
+ | |||
+ | // Ensure target exists | ||
+ | var $target = $(this.hash), target = this.hash; | ||
+ | if (target) { | ||
+ | |||
+ | // Find location of target | ||
+ | var targetOffset = $target.offset().top; | ||
+ | $(this).click(function(event) { | ||
+ | |||
+ | // Prevent jump-down | ||
+ | event.preventDefault(); | ||
+ | |||
+ | // Animate to target | ||
+ | $(scrollElem).animate({scrollTop: targetOffset}, 400, function() { | ||
+ | |||
+ | // Set hash in URL after animation successful | ||
+ | location.hash = target; | ||
+ | |||
+ | }); | ||
+ | }); | ||
+ | } | ||
+ | } | ||
+ | |||
+ | }); | ||
+ | |||
+ | // Use the first element that is "scrollable" (cross-browser fix?) | ||
+ | function scrollableElement(els) { | ||
+ | for (var i = 0, argLength = arguments.length; i <argLength; i++) { | ||
+ | var el = arguments[i], | ||
+ | $scrollElement = $(el); | ||
+ | if ($scrollElement.scrollTop()> 0) { | ||
+ | return el; | ||
+ | } else { | ||
+ | $scrollElement.scrollTop(1); | ||
+ | var isScrollable = $scrollElement.scrollTop()> 0; | ||
+ | $scrollElement.scrollTop(0); | ||
+ | if (isScrollable) { | ||
+ | return el; | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | return []; | ||
+ | } | ||
+ | |||
+ | }); | ||
+ | </script> | ||
+ | |||
+ | |||
+ | |||
<div id="rightcontent"> | <div id="rightcontent"> |
Revision as of 06:00, 28 September 2011