Thanks Karl, that works perfectly.  I'm still looking forward to the official
bug-fix, but this will tide me over great in the mean time :)


Karl Swedberg-2 wrote:
> 
> I was planning to post this at learningjquery.com eventually, but  
> since you asked...
> 
> Here is what I do to apply the ScrollTo() feature of Interface to  
> only same-page links. Note that I have it look only inside #main- 
> content, but you can remove or replace that. By the way, I had to  
> start with [EMAIL PROTECTED]"#"], using the asterisk, because IE always uses  
> the fully-qualified URL (so we can't just find "#" at the beginning).


// smooth scrolling for all same-page links *wrap this in a $ 
(document).ready(function{});

   var docHashIndex = location.href.indexOf("#");
   if (docHashIndex != -1) {
     var docURL = location.href.slice(0,docHashIndex);
   }
   else {
     var docURL = location.href;
   }

   $('#main-content [EMAIL PROTECTED]"#"]').click(function() {
     var $linkHref = $(this).href();
     var linkHashIndex = $linkHref.indexOf('#');
     var linkURL = $linkHref.slice(0,linkHashIndex);
     var linkHash = $linkHref.slice(linkHashIndex);

     if (docURL == linkURL) {
       if ($(linkHash).length > 0 ) {
         $(linkHash).ScrollTo(400);
         return false;
       } else {
         $linkDest = $("[EMAIL PROTECTED]" + linkHash.slice(1) +']');
         if ($linkDest.length > 0) {
           $linkDest.ScrollTo(400);
           return false;
         }
       }
     }
   });



--Karl
_________________
Karl Swedberg
www.englishrules.com
www.learningjquery.com



On Jan 18, 2007, at 6:59 AM, [-Stash-] wrote:

>
> Many thanks to Stefan for helping me with this off list.
>
>
> If anyone else wants to get this working with a single external  
> file, so
> your header has something like this in it:
>
>
> <script type="text/javascript" src="jquery.js"></script>
> <script type="text/javascript" src="interface.js"></script>
> <script type="text/javascript" src="ScrollToAnchors.js"></ 
> script>
>
>
> ScrollToAnchors.js should contain the following:
>
>
> $(document).ready(
>    function()
>    {
>       $(document).ScrollToAnchors(630);
>    }
> );
>
> Change the ScrollToAnchors() value to whatever you like.  Higher  
> number ->
> slower scrolling.
>
>
> I have a problem with it though.  Scrolling between anchors on the  
> same page
> works perfectly, but when trying to go to another page, the links  
> don't work
> at all!  The Top of Page and Bottom of Page links on
> http://exhibitq.com/talk/comments.php?DiscussionID=3&page=1 this  
> page  work
> as expected, but if I try clicking on any of  http://exhibitq.com/ 
> talk/ the
> discussion links on the main discussions page  nothing happens!
>
>
> I realise that I could specify exactly which anchors I would like  
> the plugin
> to work for, but I would rather it would just work as expected by  
> default.
> What would I need to change to get these links to other pages to work
> properly?
>
>
> P.S. please feel free to sign up to the forums if you want to test  
> things
> out, it's just a general testing zone for me.


_______________________________________________
jQuery mailing list
[email protected]
http://jquery.com/discuss/



-- 
View this message in context: 
http://www.nabble.com/Smooth-page-scrolling-between-internal-anchors-tf2939313.html#a8432903
Sent from the jQuery Plugins mailing list archive at Nabble.com.


_______________________________________________
jQuery mailing list
[email protected]
http://jquery.com/discuss/

Reply via email to