jQuery-like API for web-sys
jQuery is dead and everyone agrees that you should use a modern
approach like React instead (or, in the Rust/WASM world,
Yew).
web-sys-query
allows you to port simple jQuery applications to
Rust/WASM with a familiar API instead of the rather complex
web-sys DOM API.
TODO
- Documentation and examples
- Unit tests
- AJAX
- ...
Feature flags
serde-serialize
: use serde_derive
to enable Serialize
and
Deserialize
support on types such as FormData
(disabled by
default).
API
Attributes
jQuery: Attributes |
Document |
Element + Collection |
.addClass() |
|
add_class |
.attr() |
|
attr, set_attr |
.hasClass() |
|
has_class |
.html() |
|
html, set_html |
.prop() |
|
|
.removeAttr() |
|
remove_attr |
.removeClass() |
|
remove_class |
.removeProp() |
|
|
.toggleClass() |
|
toggle_class |
.val() |
|
val, set_val, *_i32, *_f64 |
Events
jQuery: Attributes |
Document |
Element + Collection |
.bind() |
|
|
.blur() |
|
blur, set_blur |
.change() |
|
change, set_change |
.click() |
|
click, set_click |
.contextmenu() |
|
context_menu, set_context_menu |
.dblclick() |
|
dbl_click, set_dbl_click |
.delegate() |
|
|
.die() |
|
|
.error() |
|
|
.focus() |
|
focus, set_focus |
.focusin() |
|
|
.focusout() |
|
|
.hover() |
|
|
.keydown() |
|
key_down, set_key_down |
.keypress() |
|
key_press, set_key_press |
.keyup() |
|
key_up, set_key_up |
.live() |
|
|
.load() |
|
|
.mousedown() |
|
mouse_down, set_mouse_down |
.mouseenter() |
|
mouse_enter, set_mouse_enter |
.mouseleave() |
|
mouse_leave, set_mouse_leave |
.mousemove() |
|
mouse_move, set_mouse_move |
.mouseout() |
|
mouse_out, set_mouse_out |
.mouseover() |
|
mouse_over, set_mouse_over |
.mouseup() |
|
mouse_up, set_mouse_up |
.off() |
|
set_off |
.on() |
|
on, set_on |
.one() |
|
|
.ready() |
|
|
.resize() |
|
resize, set_resize |
.scroll() |
|
scroll, set_scroll |
.select() |
|
select, set_select |
.submit() |
|
submit, set_submit |
.toggle() |
|
|
.trigger() |
|
|
.triggerHandler() |
|
|
.unbind() |
|
|
.undelegate() |
|
|
.unload() |
|
|
Manipulation
jQuery: Traversing |
Document |
Element + Collection |
.after() |
|
|
.append() |
|
|
.appendTo() |
|
|
.before() |
|
|
.clone() |
|
|
.css() |
|
|
.detach() |
|
|
.empty() |
|
|
.height() |
|
|
.innerHeight() |
|
|
.innerWidth() |
|
|
.insertAfter() |
|
|
.insertBefore() |
|
|
$.cssNumber |
|
|
$.htmlPrefilter() |
|
|
.offset() |
|
|
.outerHeight() |
|
|
.outerWidth() |
|
|
.position() |
|
|
.prepend() |
|
|
.prependTo() |
|
|
.remove() |
|
|
.replaceAll() |
|
|
.replaceWith() |
|
|
.scrollLeft() |
|
|
.scrollTop() |
|
|
.text() |
|
text, set_text |
.unwrap() |
|
|
.width() |
|
|
.wrap() |
|
|
.wrapAll() |
|
|
.wrapInner() |
|
|
Traversing
jQuery: Traversing |
Document |
Element + Collection |
.add() |
|
|
.addBack() |
|
|
.andSelf() |
|
|
.children() |
children |
children |
.closest() |
|
closest |
.contents() |
|
|
.each() |
|
|
.end() |
|
|
.eq() |
|
|
.even() |
|
|
.filter() |
|
filter |
.find() |
find |
find |
.first() |
|
first |
.has() |
|
has |
.is() |
|
is |
.last() |
|
last |
.map() |
|
|
.next() |
|
next |
.nextAll() |
|
|
.nextUntil() |
|
|
.not() |
|
not |
.odd() |
|
|
.offsetParent() |
|
|
.parent() |
|
parent |
.parents() |
|
|
.parentsUntil() |
|
|
.prev() |
|
prev |
.prevAll() |
|
|
.prevUntil() |
|
|
.siblings() |
|
|
.slice() |
|
|
Helper Functions
jQuery: Traversing |
Document |
Element + Collection |
jQuery.param() |
|
|
.serialize() |
|
|
.serializeArray() |
|
serialize_array, FormData |
Copyright and license
Licensed under an OpenBSD-ISC-style license, see LICENSE for details.