# js/dom Package dom provides Go bindings for the JavaScript DOM APIs. ## Version 2 **API Status:** Stable, changes only due to DOM being a moving target Version 2 of package dom is implemented on top of the [`syscall/js`](https://go.dev/pkg/syscall/js) API and supports both Go WebAssembly and GopherJS. It provides an API that is as close as possible to v1, with the following neccessary changes: - All struct fields with `js:"foo"` tags have been replaced with equivalent methods - `Underlying()` returns `js.Value` instead of `*js.Object` - `AddEventListener()` returns `js.Func` instead of `func(*js.Object)` ### Install go get honnef.co/go/js/dom/v2 ### Documentation For documentation, see https://pkg.go.dev/honnef.co/go/js/dom/v2. ## Version 1 **API Status:** Stable, changes only due to DOM being a moving target Version 1 of package dom is implemented on top of the [`github.com/gopherjs/gopherjs/js`](https://pkg.go.dev/github.com/gopherjs/gopherjs/js) API and supports GopherJS only. ### Install go get honnef.co/go/js/dom ### Documentation For documentation, see https://pkg.go.dev/honnef.co/go/js/dom.