summaryrefslogtreecommitdiff
path: root/public
diff options
context:
space:
mode:
Diffstat (limited to 'public')
-rw-r--r--public/js/extra.js7
1 files changed, 5 insertions, 2 deletions
diff --git a/public/js/extra.js b/public/js/extra.js
index 714e2057..8fa99ce2 100644
--- a/public/js/extra.js
+++ b/public/js/extra.js
@@ -635,12 +635,15 @@ function smoothHashScroll() {
$element.on('click', function (e) {
// store hash
var hash = decodeURIComponent(this.hash);
- if ($(hash).length <= 0) return;
+ // escape special characters in jquery selector
+ var $hash = $(hash.replace(/(:|\.|\[|\]|,)/g, "\\$1"));
+ // return if no element been selected
+ if ($hash.length <= 0) return;
// prevent default anchor click behavior
e.preventDefault();
// animate
$('body, html').stop(true, true).animate({
- scrollTop: $(hash).offset().top
+ scrollTop: $hash.offset().top
}, 100, "linear", function () {
// when done, add hash to url
// (default click behaviour)