kelo

Форк
0
/
history.go 
59 строк · 1003.0 Байт
1
package godom
2

3
import (
4
	"gitverse.ru/metalcore/kelo/wrapper"
5
)
6

7
type HistoryValuer interface {
8
	wrapper.JSGetter
9

10
	Length() int
11
	ScrollRestoration() string
12
	State() any
13

14
	Back()
15
	Forward()
16
	Go(int)
17
	PushState(any, string)
18
	ReplaceState(any, string)
19
}
20

21
type History struct {
22
	wrapper.JS
23
}
24

25
func NewHistory(js wrapper.JSValuer) *History {
26
	return &History{*wrapper.NewJS(js)}
27
}
28

29
func (h *History) Length() int {
30
	return h.GetJS().Get("length").Int()
31
}
32

33
func (h *History) ScrollRestoration() string {
34
	return h.GetJS().Get("scrollRestoration").String()
35
}
36

37
func (h *History) State() any {
38
	return h.GetJS().Get("state")
39
}
40

41
func (h *History) Back() {
42
	h.GetJS().Call("back")
43
}
44

45
func (h *History) Forward() {
46
	h.GetJS().Call("forward")
47
}
48

49
func (h *History) Go(n int) {
50
	h.GetJS().Call("go", n)
51
}
52

53
func (h *History) PushState(state any, unused string) {
54
	h.GetJS().Call("pushState", state, unused)
55
}
56

57
func (h *History) ReplaceState(state any, unused string) {
58
	h.GetJS().Call("replaceState", state, unused)
59
}
60

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.