|
182 | 182 | var sepIndex = url.indexOf('?');
|
183 | 183 | if (sepIndex < 0) sepIndex = url.indexOf('#');
|
184 | 184 | if (sepIndex >= 0) {
|
185 |
| - url = url.substring(0, sepIndex); |
| 185 | + url = url.slice(0, sepIndex); |
186 | 186 | }
|
187 | 187 | return url;
|
188 | 188 | }
|
|
194 | 194 | var currUrl = extractCleanUrl(location.href);
|
195 | 195 |
|
196 | 196 | if (prevUrl.length <= currUrl.length) return;
|
197 |
| - if (prevUrl.substring(0, currUrl.length) !== currUrl) return; |
198 |
| - var goesUp = prevUrl.substring(currUrl.length); |
| 197 | + if (prevUrl.slice(0, currUrl.length) !== currUrl) return; |
| 198 | + var goesUp = prevUrl.slice(currUrl.length); |
199 | 199 | if (currUrl[currUrl.length - 1] !== '/' && goesUp[0] !== '/') return;
|
200 | 200 | var matchInfo = /[^/]+/.exec(goesUp);
|
201 | 201 | if (!matchInfo) return;
|
202 | 202 | var prevChildName = matchInfo[0];
|
203 | 203 | if (!prevChildName) return;
|
204 | 204 | prevChildName = decodeURIComponent(prevChildName);
|
| 205 | + if (!matchFilter(prevChildName)) return; |
205 | 206 |
|
206 |
| - var items = document.body.querySelectorAll(selectorItem); |
| 207 | + var items = document.body.querySelectorAll(selectorItemList + '>' + selectorItemNotNone); |
207 | 208 | items = Array.prototype.slice.call(items);
|
208 | 209 | var selectorName = '.field.name';
|
209 | 210 | var selectorLink = 'a';
|
210 | 211 | for (var i = 0, len = items.length; i < len; i++) {
|
211 | 212 | var item = items[i];
|
212 | 213 | var elName = item.querySelector(selectorName);
|
213 | 214 | if (!elName) continue;
|
| 215 | + |
214 | 216 | var text = elName.textContent;
|
215 | 217 | if (text[text.length - 1] === '/') {
|
216 |
| - text = text.substring(0, text.length - 1); |
| 218 | + text = text.slice(0, -1); |
217 | 219 | }
|
218 | 220 | if (text !== prevChildName) continue;
|
| 221 | + |
219 | 222 | var elLink = item.querySelector(selectorLink);
|
220 |
| - if (elLink) { |
221 |
| - lastFocused = elLink; |
222 |
| - elLink.focus(); |
223 |
| - elLink.scrollIntoView({block: 'center'}); |
224 |
| - } |
225 |
| - break; |
| 223 | + if (!elLink) break; |
| 224 | + |
| 225 | + lastFocused = elLink; |
| 226 | + elLink.focus(); |
| 227 | + elLink.scrollIntoView({block: 'center'}); |
226 | 228 | }
|
227 | 229 | }
|
228 | 230 |
|
|
0 commit comments