Я написал класс для создания набора вкладок из контента в серии вложенных DIV (сайт, над которым я сейчас работаю, очень неохотно устанавливает JQuery, поэтому я не могу использовать JQuery UI).Я пытаюсь добавить изящную небольшую функцию, чтобы, когда пользователь обновляет страницу, эта же вкладка оставалась открытой (это также позволило бы мне отправить пользователя на соответствующую вкладку на странице с другой страницы и т. Д.)
Мой код работает нормально, за исключением случаев, когда я пытаюсь изменить хэш URL при открытии новой вкладки.В данный момент хэш ненадолго меняется, а затем, по-видимому, возвращается к пустому ('').Мне приходится работать с Prototype и Scriptaculous, поэтому мне было интересно, знает ли кто-нибудь, есть ли в этих библиотеках событие автоматического изменения хеша, которое я должен переопределить, или что-то подобное?Кто-нибудь знает, что может быть причиной проблемы?Я действительно озадачен этим!Соответствующие части моего кода ниже ...
ff_Tabs.prototype.getSelectedTabFromHash = function () {
// is there a has set?
if (this.Selected < 0) {
for (iTab in this.Tabs) {
if (typeof this.Tabs [iTab] != 'function') {
if ('#' + this.HashNamespace + '-' + iTab == window.location.hash) {
// hash refers to tab
return iTab;
}
}
}
}
// no, return to default
if (this.Selected >= 0) {
return this.Selected;
}
else {
return 0;
}
}
ff_Tabs.prototype.changeSelectedHash = function (iTabId) {
// change the has to something selected
window.location.hash = '#' + this.HashNamespace + '-' + iTabId;
}