Skip to content

Commit aad0d74

Browse files
committed
Merge pull request cferdinandi#138 from cferdinandi/development
Adjust how fixedHeader is set
2 parents 8d159a6 + 484b1d1 commit aad0d74

File tree

7 files changed

+19
-17
lines changed

7 files changed

+19
-17
lines changed

README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -254,8 +254,10 @@ Smooth Scroll is licensed under the [MIT License](http://gomakethings.com/mit/).
254254

255255
Smooth Scroll uses [semantic versioning](http://semver.org/).
256256

257+
* v5.3.3 - December 21, 2014
258+
* Adjust how fixed header is set for better accuracy and flexibility.
257259
* v5.3.2 - December 20, 2014
258-
* Added method to get nod eheight more accurately.
260+
* Added method to get node height more accurately.
259261
* v5.3.1 - December 20, 2014
260262
* Cache header height for better performance.
261263
* v5.3.0 - December 20, 2014

dist/js/smooth-scroll.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* smooth-scroll v5.3.2
2+
* smooth-scroll v5.3.3
33
* Animate scrolling to anchor links, by Chris Ferdinandi.
44
* http://github.com/cferdinandi/smooth-scroll
55
*
@@ -25,7 +25,7 @@
2525

2626
var smoothScroll = {}; // Object for public APIs
2727
var supports = !!document.querySelector && !!root.addEventListener; // Feature test
28-
var settings, eventTimeout, fixedHeader, headerHeight;
28+
var settings, eventTimeout, fixedHeader;
2929

3030
// Default settings
3131
var defaults = {
@@ -287,6 +287,8 @@
287287
// Selectors and variables
288288
var anchorElem = anchor === '#' ? document.documentElement : document.querySelector(anchor);
289289
var startLocation = root.pageYOffset; // Current location on the page
290+
if ( !fixedHeader ) { fixedHeader = document.querySelector('[data-scroll-header]'); } // Get the fixed header if not already set
291+
var headerHeight = fixedHeader === null ? 0 : ( getHeight( fixedHeader ) + fixedHeader.offsetTop ); // Get the height of a fixed header if one exists
290292
var endLocation = getEndLocation( anchorElem, headerHeight, parseInt(settings.offset, 10) ); // Scroll to location
291293
var animationInterval; // interval timer
292294
var distance = endLocation - startLocation; // distance to travel
@@ -392,7 +394,6 @@
392394
settings = null;
393395
eventTimeout = null;
394396
fixedHeader = null;
395-
headerHeight = null;
396397
};
397398

398399
/**
@@ -411,7 +412,6 @@
411412
// Selectors and variables
412413
settings = extend( defaults, options || {} ); // Merge user options with defaults
413414
fixedHeader = document.querySelector('[data-scroll-header]'); // Get the fixed header
414-
headerHeight = fixedHeader === null ? 0 : ( getHeight( fixedHeader ) + fixedHeader.offsetTop ); // Get the height of a fixed header if one exists
415415

416416
// When a toggle is clicked, run the click handler
417417
document.addEventListener('click', eventHandler, false );

dist/js/smooth-scroll.min.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/dist/js/smooth-scroll.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* smooth-scroll v5.3.2
2+
* smooth-scroll v5.3.3
33
* Animate scrolling to anchor links, by Chris Ferdinandi.
44
* http://github.com/cferdinandi/smooth-scroll
55
*
@@ -25,7 +25,7 @@
2525

2626
var smoothScroll = {}; // Object for public APIs
2727
var supports = !!document.querySelector && !!root.addEventListener; // Feature test
28-
var settings, eventTimeout, fixedHeader, headerHeight;
28+
var settings, eventTimeout, fixedHeader;
2929

3030
// Default settings
3131
var defaults = {
@@ -287,6 +287,8 @@
287287
// Selectors and variables
288288
var anchorElem = anchor === '#' ? document.documentElement : document.querySelector(anchor);
289289
var startLocation = root.pageYOffset; // Current location on the page
290+
if ( !fixedHeader ) { fixedHeader = document.querySelector('[data-scroll-header]'); } // Get the fixed header if not already set
291+
var headerHeight = fixedHeader === null ? 0 : ( getHeight( fixedHeader ) + fixedHeader.offsetTop ); // Get the height of a fixed header if one exists
290292
var endLocation = getEndLocation( anchorElem, headerHeight, parseInt(settings.offset, 10) ); // Scroll to location
291293
var animationInterval; // interval timer
292294
var distance = endLocation - startLocation; // distance to travel
@@ -392,7 +394,6 @@
392394
settings = null;
393395
eventTimeout = null;
394396
fixedHeader = null;
395-
headerHeight = null;
396397
};
397398

398399
/**
@@ -411,7 +412,6 @@
411412
// Selectors and variables
412413
settings = extend( defaults, options || {} ); // Merge user options with defaults
413414
fixedHeader = document.querySelector('[data-scroll-header]'); // Get the fixed header
414-
headerHeight = fixedHeader === null ? 0 : ( getHeight( fixedHeader ) + fixedHeader.offsetTop ); // Get the height of a fixed header if one exists
415415

416416
// When a toggle is clicked, run the click handler
417417
document.addEventListener('click', eventHandler, false );

docs/dist/js/smooth-scroll.min.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "smooth-scroll",
3-
"version": "5.3.2",
3+
"version": "5.3.3",
44
"description": "Animate scrolling to anchor links",
55
"main": "./dist/js/smooth-scroll.js",
66
"author": {

0 commit comments

Comments
 (0)