Commit bc07e2ad authored by Jacob Thornton's avatar Jacob Thornton

allow for pushstate in scrollspy

parent b6278989
...@@ -54,7 +54,8 @@ ...@@ -54,7 +54,8 @@
$targets = this.$body $targets = this.$body
.find(this.selector) .find(this.selector)
.map(function () { .map(function () {
var href = $(this).attr('href') var $el = $(this)
, href = $el.data('target') || $el.attr('href')
, $href = /^#\w/.test(href) && $(href) , $href = /^#\w/.test(href) && $(href)
return ( $href return ( $href
&& href.length && href.length
...@@ -91,6 +92,7 @@ ...@@ -91,6 +92,7 @@
, activate: function (target) { , activate: function (target) {
var active var active
, selector
this.activeTarget = target this.activeTarget = target
...@@ -98,7 +100,11 @@ ...@@ -98,7 +100,11 @@
.parent('.active') .parent('.active')
.removeClass('active') .removeClass('active')
active = $(this.selector + '[href="' + target + '"]') selector = this.selector
+ '[data-target="' + target + '"],'
+ this.selector + '[href="' + target + '"]'
active = $(selector)
.parent('li') .parent('li')
.addClass('active') .addClass('active')
......
...@@ -1309,7 +1309,8 @@ ...@@ -1309,7 +1309,8 @@
$targets = this.$body $targets = this.$body
.find(this.selector) .find(this.selector)
.map(function () { .map(function () {
var href = $(this).attr('href') var $el = $(this)
, href = $el.data('target') || $el.attr('href')
, $href = /^#\w/.test(href) && $(href) , $href = /^#\w/.test(href) && $(href)
return ( $href return ( $href
&& href.length && href.length
...@@ -1346,6 +1347,7 @@ ...@@ -1346,6 +1347,7 @@
, activate: function (target) { , activate: function (target) {
var active var active
, selector
this.activeTarget = target this.activeTarget = target
...@@ -1353,7 +1355,11 @@ ...@@ -1353,7 +1355,11 @@
.parent('.active') .parent('.active')
.removeClass('active') .removeClass('active')
active = $(this.selector + '[href="' + target + '"]') selector = this.selector
+ '[data-target="' + target + '"],'
+ this.selector + '[href="' + target + '"]'
active = $(selector)
.parent('li') .parent('li')
.addClass('active') .addClass('active')
......
This diff is collapsed.
...@@ -54,7 +54,8 @@ ...@@ -54,7 +54,8 @@
$targets = this.$body $targets = this.$body
.find(this.selector) .find(this.selector)
.map(function () { .map(function () {
var href = $(this).attr('href') var $el = $(this)
, href = $el.data('target') || $el.attr('href')
, $href = /^#\w/.test(href) && $(href) , $href = /^#\w/.test(href) && $(href)
return ( $href return ( $href
&& href.length && href.length
...@@ -91,6 +92,7 @@ ...@@ -91,6 +92,7 @@
, activate: function (target) { , activate: function (target) {
var active var active
, selector
this.activeTarget = target this.activeTarget = target
...@@ -98,7 +100,11 @@ ...@@ -98,7 +100,11 @@
.parent('.active') .parent('.active')
.removeClass('active') .removeClass('active')
active = $(this.selector + '[href="' + target + '"]') selector = this.selector
+ '[data-target="' + target + '"],'
+ this.selector + '[href="' + target + '"]'
active = $(selector)
.parent('li') .parent('li')
.addClass('active') .addClass('active')
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment