Книга: JavaScript. Подробное руководство, 6-е издание
History
History
журнал посещений объекта Window
Объект History
представляет историю посещений окна. Однако по соображениям безопасности объект History
не позволяет получать из сценариев доступ к хранящимся в нем URL-адресам. Методы объекта History
позволяют сценариям лишь перемещаться вперед и назад по истории посещений и добавлять в нее новые записи.
Свойства
readonly long length
Это свойство определяет количество URL-адресов в журнале (истории) посещений броузера. Знание размера этого списка не особенно полезно, поскольку нет способа определить индекс текущего отображаемого документа в этом списке.
Методы
void back()
В результате вызова метода back()
окно или фрейм, которому принадлежит объект History
, заново открывает URL-адрес (если он есть), открытый непосредственно перед текущим. Вызов этого метода имеет тот же эффект, что и щелчок на кнопке Back броузера. Он также эквивалентен инструкции:
history.go(-1);
void forward()
В результате вызова метода forward()
окно или фрейм, которому принадлежит объект History
, заново открывает URL-адрес (если он есть), открытый непосредственно после текущего. Вызов этого метода имеет тот же эффект, что и щелчок на кнопке Forward броузера. Он также эквивалентен инструкции:
history.go(1);
void go([long delta])
Метод History.go()
принимает целочисленный аргумент и вынуждает броузер открыть URL-адрес, отстоящий от текущего в журнале истории посещений на указанное число позиций. Положительное значение соответствует переходу вперед по истории посещений, а отрицательное - переходу назад. То есть вызов history.go(-1)
эквивалентен вызову history.back()
и имеет тот же эффект, что и щелчок на кнопке Back. При вызове с аргументом 0 или вообще без аргумента этот метод перезагрузит текущий документ.
void pushState(any data, string title, [string url])
Добавляет новую запись в журнал посещений для данного окна, сохраняя структурированную копию (см. врезку «Структурированные копии» в главе 22) данных data
, а также значения title
и url
. Если позднее пользователь воспользуется механизмом истории посещений броузера, чтобы вернуться к этому сохраненному состоянию, в окне будет сгенерировано событие «popstate» и обработчику будет передан объект PopStateEvent
с еще одной структурированной копией значения аргумента data
в его свойстве state
.
Аргумент title
определяет имя сохраненного состояния, и броузеры могут отображать его в графическом интерфейсе управления историей посещений. (На момент написания этих строк броузеры игнорировали данный аргумент). Если указан аргумент url, он будет отображаться в строке ввода адреса и обеспечит сохранение информации о состоянии, благодаря чему его можно будет использовать для создания закладки или передачи другим пользователям. Аргумент url интерпретируется относительно текущего значения document location
. Если в аргументе url указан абсолютный URL-адрес, он должен иметь то же происхождение, что и текущий документ. Чаще всего URL-адреса используются на практике для изменения идентификатора фрагмента документа, начинающегося с символа #.
void replaceState(any data, string title, [string url])
Этот метод похож на метод pushState(),
за исключением того, что вместо создания новой записи в истории посещений окна он изменяет текущую запись, сохраняя в ней новые значения data, title
и url
.
- ApplicationCache
- ArrayBuffer
- ArrayBufferView
- Attr
- Audio
- BeforeUnloadEvent
- Blob
- BlobBuilder
- Button
- Canvas
- BlobBuilder
- Button
- Canvas
- CanvasGradient
- CanvasPattern
- CanvasRenderingContext2D
- ClientRect
- CloseEvent
- Comment
- Console
- ConsoleCommandLine
- CSS2Properties
- CSSRule
- CSSStyleDeclaration
- CSSStyleSheet
- DataTransfer
- DataView
- Document
- DocumentFragment
- DocumentType
- DOMException
- DOMImplementation
- DOMSettableTokenList
- DOMTokenList
- Element
- ErrorEvent
- Event
- EventSource
- EventTarget
- FieldSet
- File
- FileError
- FileReader
- FileReaderSync
- Form
- FormControl
- Form Data
- FormValidity
- Geocoordinates
- Geolocation
- GeolocationError
- Geoposition
- HashChangeEvent
- History
- HTMLCollection
- HTMLDocument
- HTMLEIement
- HTMLFormControlsCollection
- HTMLOptionsCollection
- IFrame
- Image
- ImageData
- Input
- jQuery jQuery 1.4
- KeyEvent
- Label
- Link
- Location
- MediaElement
- MediaError
- MessageChannel
- MessageEvent
- MessagePort
- Meter
- MouseEvent
- Navigator
- Node
- NodeList
- Option
- Output
- PageTransitionEvent
- PopStateEvent
- ProcessingInstruction
- Progress
- ProgressEvent
- Screen
- Script
- Select
- Storage
- StorageEvent
- Style
- Table
- TableCell
- TableRow
- TableSection
- Text
- TextArea
- TextMetrics
- TimeRanges
- TypedArray
- URL
- Video
- WebSocket
- Window
- Worker
- WorkerGlobalScope
- WorkerLocation
- WorkerNavigator
- XMLHttpRequest
- XMLHttpRequestUpload
- Appendix G. History
- APPENDIX A The History of Red Hat and Fedora
- 17.4.4. Wakeup Latency History
- 17.4.6. Interrupt Off History
- 7.1.1. History of Amoeba
- 8.1.1. History of Mach
- 9.1.1. History of Chorus
- 10.1.1. History of DCE
- Xerox, Novell, and History
- Usenet History
- 4.2 A Brief History of Operating Systems
- A Short History of Code on the Net