Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
// .........
if ( history.pushState ) {
// .........
var locationObject = history.location || window.location;
// .........
}
// .........
Да и не понимаю я, зачем нужно использовать history.location. Если есть pushState.Объект history.location содержит ссылку информирующую нас о том куда мы вернулись по истории, не зависимо от присутствия объекта state. То есть в в браузерах HTML5 для этих целей служит обычный window.location и/или document.location. Это я считаю один из важных параметров в отличии от объекта state, который на мой взгляд ввели избыточно.
if ( Pages._lastUrl != location.href ) {
Pages.open(location.pathname);
}
if ( Pages._lastUrl != ( history.location || location ).href ) {
Pages.open( ( history.location || location ).pathname );
}
Pages._lastUrl = location.href;
Pages._lastUrl = ( history.location || location ).href;
Я же верно размышляю?
Кстати, меня, если честно, слегка смутило, то что вы не используете git теги для версий библиотеки, а вместо этого создали директорию «old». С тегами было бы проще и вам и пользователям библиотеки.
url: this.getAttribute( «href», 2 ) // двоечка нужна для ИЕ6-7
HTML5 History API уже сегодня и без ограничений