Skip to main content Module dom Copy item path Source OwnedGlyph ð 1 æåã¶ãã®å圢ãããã©ã³ãã®é ãæããã« æ±ããããåãããã®ã DrawSrc ð drawImage ã®è»¢éå
ã<img> ãšå¥ã® canvas ãæ±ããarg ð arg_to_node ð åŒæ°ã DOM ããŒã idx ã«è§£æ±ºïŒèŠçŽ ã¯ãã®ãŸãŸãæååã¯ããã¹ãããŒãçæïŒã canvas_arc canvas_arg_f32 ð åŒæ°ã f32 ã§åããéæéå€ã¯ 0 ãšã¿ãªãïŒæç»ç³»ã§ãããã¯ãããªãïŒã canvas_begin_path canvas_bezier_curve_to canvas_clear_rect canvas_clip clip(fillRule)ãçŸåšã®ãã¹ã§ã¯ãªããé åãçãããcanvas_close_path canvas_ctx_id ð ã³ã³ããã¹ããªããžã§ã¯ããã registry ã® id ãåãåºãã canvas_draw_image drawImage(img, dx, dy) / (img, dx, dy, dw, dh) /
(img, sx, sy, sw, sh, dx, dy, dw, dh)ãcanvas_ellipse ellipse(cx, cy, rx, ry, rotation, start, end, anticlockwise)ãcanvas_fill canvas_fill_rect canvas_fill_text fillText(text, x, y)ãcanvas_font_size ð ã³ã³ããã¹ãã® font ããæåã®å€§ããïŒpxïŒãåŸããæ¢å®ã¯ 10pxã canvas_get_image_data getImageData(x, y, w, h)ãé¢ã®å
容ãèªãã§ ImageData ãè¿ããcanvas_line_to canvas_measure_text measureText(text)ãcanvas_move_to canvas_put_image_data putImageData(imageData, dx, dy)ãcanvas_quadratic_curve_to canvas_rect canvas_reset_transform canvas_restore restore() â çŽè¿ã®éé¿ç¶æ
ãžæ»ããcanvas_rotate canvas_round_rect roundRect(x, y, w, h, radii)ãcanvas_save save() â çŸåšã®æç»ç¶æ
ãéé¿ãããcanvas_scale canvas_set_transform setTransform(a,b,c,d,e,f) â è¡åã眮ãæããïŒç©ãŸãªãïŒãcanvas_stroke canvas_stroke_rect canvas_style_argb ð JS åŽã®ã¹ã¿ã€ã«æååã ARGB ãžè§£æ±ºããã canvas_sync_state ð æç»åã«ãJS åŽã§æžãæããããç¶æ
ãã³ã³ããã¹ããžåæ ããã canvas_transform transform(a,b,c,d,e,f) â çŸåšã®è¡åãžå³ããæãããcanvas_translate char_data_chars ð CharacterData.appendData/.deleteData/.insertData/.replaceData/
.substringDataïŒäžžããšæªå¯Ÿå¿ã ã£ãã2026-07-16 çºèŠïŒãããã¹ãããŒã
ã®ã¿ã«æå³ãæã€ïŒåŒã³åºãå
ã® interp.rs åŽã§ is_text ã¬ãŒãæžã¿ïŒãã
ããã§ã¯ç¡æ¡ä»¶ã«ããã¹ãå
容ãèªã¿æžããããä»ã®æååç³»ã¡ãœãã
ïŒstr_slice/str_substringïŒãšåã char åäœãªãã»ããã®ç°¡ç¥å®è£
ïŒUTF-16 ã³ãŒãåäœã§ã¯ãªãïŒãchar_data_check_offset ð CharacterDataç·šéã¡ãœãã矀ïŒdeleteData/insertData/replaceData/
substringDataïŒã¯ä»æ§äžãoffsetãlengthãè¶
ããå ŽåIndexSizeErrorã
æããã¹ãïŒcountåŽã¯è¶
éåãèªåçã«ã¯ã©ã³ãããã ãã§äŸå€ã«ã¯ãªããªãïŒ
ãã以åã¯offsetãlenãžé»ã£ãŠã¯ã©ã³ãããŠããŸããç¯å²å€åŒã³åºãã
åžžã«ç¡å®³ãª no-opïŒdeleteData/substringDataïŒãæ«å°Ÿãžã®è¿œèš
ïŒinsertDataïŒãšããŠæç«ããŠãããtable.insertRowçãšåããç¯å²å€
ã€ã³ããã¯ã¹ã®é»æ®ºããã°æã®äžã€ãcomputed_get_property_value computedStyle.getPropertyValue(name): kebab-case ã®ããããã£å€ãè¿ãã current_field_value ð çŸåšã®.valueæååãèªãïŒtextareaã¯value屿§åªå
ãç¡ããã°
initial_textã«ãã©ãŒã«ããã¯ãinterp/dom_props.rsã®value
ã²ãã¿ãŒãšåãããžãã¯ïŒã document_adopt_node document.adoptNode(node)ïŒäžžããšæªå¯Ÿå¿ã ã£ãïŒãåäžææžã®ãã®åŠçç³»
ã§ã¯ã奿æžããé€åçžçµããããšããæå³ã¯ç¡ãããã仿§ã®å¯äœçš
ïŒçŸåšã®èŠªããåãå€ãïŒã®ã¿ãåçŸããæž¡ãããããŒãããã®ãŸãŸè¿ããdocument_create_attribute document.createAttribute(name)ïŒäžžããšæªå¯Ÿå¿ã ã£ããgetAttributeNode
ãšå¯Ÿã«ãªããAttr ããŒããæ°èŠã«äœã£ãŠãã setAttributeNode() ã§
èŠçŽ ãžåãä»ããå®çªãã¿ãŒã³ïŒãHTML ææžã®ãã仿§ã©ããååã
å°æååããå€ã¯ç©ºæååã»ownerElement 㯠nullïŒæªåãä»ãïŒã§è¿ããdocument_create_comment ð document_create_document_fragment ð document_create_element ð document_create_element_ns ð document.createElementNS(namespaceURI, qualifiedName)ïŒäžžããšæªå¯Ÿå¿
ã ã£ããSVG èŠçŽ ïŒdocument.createElementNS('http://www.w3.org/2000/svg', 'circle') çïŒã JS ããåççæããæšæºçãªå®çªãã¿ãŒã³ïŒããã®åŠçç³»ã¯
*AttributeNS ç³»ãšåãã XML åå空éãäžåã¢ãã«åããŠããªãããã
第1åŒæ°ïŒnamespaceïŒã¯ç¡èŠããŠé NS çã® createElement ãžå§è²ãã
ç°¡ç¥å®è£
ïŒå€ãã®å®çšã³ãŒã㯠SVG åå空éããæž¡ããªãããå®å®³ã¯å°ããïŒãdocument_create_text_node ð document_element_from_point ð document_elements_from_point ð document_get_element_by_id ð document_import_node document.importNode(externalNode, deep)ïŒäžžããšæªå¯Ÿå¿ã ã£ãã
<template> ã®äžèº«ãè€è£œããŠèªææžãžåã蟌ãå®çªãã¿ãŒã³
document.importNode(template.content, true) ã§äœ¿ãããïŒããã®åŠçç³»ã¯
åäžææžïŒè€æ° Document ãªããžã§ã¯ããšããæŠå¿µèªäœãç¡ãïŒã®ããã
ã奿æžããåã蟌ãããšãã仿§äžã®æå³ã¯ç¡ããå®è³ª node.cloneNode(deep)
ãšåãçµæã«ãªãç°¡ç¥å®è£
ã仿§äž deep ã¯çç¥æ false ã ããå®åã§ã¯
ã»ãŒåžžã«æç€ºçã« true ãæž¡ããããdocument_query_selector ð document_query_selector_all ð dom_add_event_listener dom_after element.after(âŠnodes)ïŒèªèº«ã®åŸã«å
åŒãšããŠæ¿å
¥ã dom_append dom_append_child dom_before element.before(âŠnodes)ïŒèªèº«ã®åã«å
åŒãšããŠæ¿å
¥ã dom_blur element.blur()ïŒHTML5ãäžžããšæªå¯Ÿå¿ã ã£ããdom_focus ã®å¯ŸïŒãèªèº«ã
çŸåšã®ãã©ãŒã«ã¹å¯Ÿè±¡ã§ããå Žåã®ã¿è§£é€ã㊠blur/focusout ãçºç«ãã
ïŒä»æ§ã©ããããã©ãŒã«ã¹ãããŠããªãèŠçŽ ã§ã® .blur() 㯠no-opïŒãdom_canvas_create_gradient <canvas> 2D context ã® createLinearGradient / createRadialGradient / createConicGradient ã®ãã«ããŒãdom_canvas_create_image_data createImageData ã¯éæã§åãã æ°ãã ImageData ãè¿ãïŒä»æ§ïŒã
é¢ã®å
容ã¯èªãŸãªããgetImageData ãšæ··åããªãããšãdom_canvas_get_context <canvas> èŠçŽ ã® getContext(contextId, options?) (HTML5 Canvas 2D Context API)ãdom_canvas_get_image_data dom_canvas_get_line_dash dom_canvas_get_transform dom_canvas_is_point_in_path dom_canvas_measure_text <canvas> 2D context ã® measureText(text) ã¡ãœããã®å®è£
ãdom_canvas_reset <canvas> 2D context ã® reset() ã¡ãœãã (WHATWG HTML Standard)ãdom_canvas_round_rect dom_canvas_set_line_dash dom_canvas_to_blob <canvas> èŠçŽ ã® toBlob(callback, type, quality) (HTML5 Canvas)ãdom_canvas_to_data_url <canvas> èŠçŽ ã® toDataURL(type, quality) (HTML5 Canvas)ãdom_char_data_append dom_char_data_delete dom_char_data_insert dom_char_data_replace dom_char_data_substring dom_check_validity element.checkValidity() / reportValidity(): çŸåšå€ã§å¶çŽããªããŒã·ã§ã³ãå®è¡ãã
劥åœãªã trueãéåãããã° false ãè¿ãã
ïŒinvalid ã€ãã³ãã¯ãã©ãŒã éä¿¡çµè·¯ submit_form åŽã§ WebEngine ãçºç«ããã
Interp ãã㯠DOM ã€ãã³ãçºç«çµè·¯ãç¡ããããããã§ã¯ bool å€å®ã®ã¿ãïŒ
éèŠ : <form> èªèº«ã«å¯Ÿãã checkValidity() ãããã©ãŒã ã®åå«ã³ã³ãããŒã«
ãäžåèŠã validate_field(form_idx, ...) ãçŽæ¥åŒãã§ããããã<form> ã¿ã°ã¯
type ã email/url/number ã®ãããã«ãäžèŽããåžžã«ç¡æ¡ä»¶ã§ trueïŒåŠ¥åœïŒã
è¿ããŠããŸããã°ã ã£ãïŒWebEngine::submit_form åŽã¯ descendants_by_tags ã§
åå«ãæ£ããèµ°æ»ããŠããã®ã«ãJS ããåŒã¶ checkValidity() ã ããé察称ã ã£ãïŒã dom_check_visibility dom_classlist_add dom_classlist_contains dom_classlist_entries classList.entries()/.keys()/.values()ïŒäžžããšæªå¯Ÿå¿ã ã£ããDOMTokenList
ã¯ä»æ§äž forEach/Symbol.iterator ã«å ããã®3ã¡ãœãããæã€ããforEachãš
for-of å埩ïŒiterable_valuesïŒã®ã¿é
ç·ããããããã®æç€ºã€ãã¬ãŒã¿ååŸ
ã¡ãœããã¯æªé
ç·ã ã£ããArray.prototype ã®ååã¡ãœãããšåããæ¢åã®
make_iterator ãã«ããŒãžå§è²ããèãå®è£
ãdom_classlist_for_each classList.forEach(fn)ïŒäžžããšæªå¯Ÿå¿ã ã£ããDOMTokenList ã¯ä»æ§äžã€ãã©ãã«/
forEach ãæã€é
å颚ã®ãªããžã§ã¯ãã ãããã®åŠç系㮠classList ã¯å°çšã®
Host("classList:N") ãããã·ã§è¡šçŸãããŠãããSymbol.iterator/forEach ã
äžåé
ç·ãããŠããªãã£ããfor (const c of el.classList) ãåãçç±ã§åžžã«
äœãå埩ããªã黿®ºãã°ã ã£ã â iterate_values() åŽã®ä¿®æ£ãšå¯ŸïŒãdom_classlist_keys dom_classlist_remove dom_classlist_replace classList.replace(oldClass, newClass)ãold ãããã° new ã«çœ®æã trueãç¡ããã° falseã dom_classlist_supports classList.supports(token)ïŒDOM Standard §4.3ïŒãdom_classlist_toggle classList.toggle(name, force)ã以åã¯ç¬¬2åŒæ° forceïŒçåœå€ãæž¡ããšçŸåšã®ç¶æ
ã«
é¢ä¿ãªã匷å¶çã«ä»äž/é€å»ããïŒãå®å
šã«ç¡èŠããåžžã«åçŽãªãã°ã«ã ããè¡ã£ãŠãã
ïŒel.classList.toggle('active', isActive) ãšããå®çªãã¿ãŒã³ãåããªãã£ãïŒãdom_classlist_values dom_click dom_clone_node node.cloneNode(deep)ãè€è£œããŒãïŒèŠªãªãïŒãè¿ãã dom_closest closest(selector): èªèº«ãå«ãç¥å
æ¹åãžæåã«ãããããèŠçŽ ãç¡ããã° nullã dom_compare_document_position node.compareDocumentPosition(other)ïŒDOMæšæºïŒãäžžããšæªå¯Ÿå¿ã ã£ãã
DomBridge::document_position ã«ããããã¹ã¯èšç®ãå§è²ãããother ã DOM ããŒãã§
ãªããã°ä»æ§äž TypeError ã ãããã®åŠçç³»ã§ã¯ç°¡ç¥åã㊠disconnected æ±ãã«ãããdom_contains node.contains(other)ïŒDOM æšæºãother ã node èªèº«ãŸãã¯åå«ãã©ããã
click-outside å€å®ãªã©ã§åºã䜿ãããïŒãäžžããšæªå¯Ÿå¿ã ã£ããæ¢åã®
is_ancestor_of() ã¯ãidx èªèº«ã¯å«ãŸãªãã仿§ã®ããã仿§ã©ããèªèº«ã
å«ããã«ã¯ããã§ç䟡ãã§ãã¯ãè£ããdom_dialog_close dialog.close(returnValue?)ãopen 屿§ãå€ããreturnValue ãèšå®ããŠãã
close ã€ãã³ããçºç«ããïŒä»æ§ã©ããïŒãDOM èŠçŽ ã¯æ±çšã® Obj.props ã§ã¯ãªã
interp.rs åŽã®æç€ºçãªããããã£äžèЧãä»ããŠã¢ã¯ã»ã¹ããããããchecked/
indeterminate ãšåããå
éšå°çšã® _ ãã¬ãã£ãã¯ã¹å±æ§ããŒããã¿ãŒã³
ïŒ_return_valueïŒã§æãããïŒthis.props ãžçŽæ¥æžããŠãèªã¿åºãçµè·¯ã
ç¡ãåæ ãããªãïŒãdom_dialog_request_close dom_dialog_show dialog.show()ïŒ<dialog> ãäžžããšæªå¯Ÿå¿ã ã£ãïŒãopen 屿§ãä»ãã
ã ãã®ç°¡ç¥å®è£
ãdom_dialog_show_modal dialog.showModal()ã以åã¯.show()ãšå
šãåãdom_dialog_showãå
±æããŠ
ãããã¢ãŒãã«/éã¢ãŒãã«ã®åºå¥èªäœãååšããªãã£ãïŒshowModal()æ¬æ¥ã®
ã¢ãŒãã«ãã©ãŒã«ã¹ãã©ããã»::backdropæç»ã¯äŸç¶å¯Ÿè±¡å€ã ã察象å€ïŒãCSS
:modalç䌌ã¯ã©ã¹ïŒäžžããšæªå¯Ÿå¿ã ã£ãã2026-07-18 çºèŠã»å®è£
ïŒãå€å®
ã§ãããããopen屿§ã«å ã:fullscreenãšåãå
éšå°çšå±æ§ãã¿ãŒã³ã§
_modalãæžã蟌ãç¹ã ãã.show()ãšç°ãªããdom_dispatch_event element.dispatchEvent(ev): ev.type ã®ã€ãã³ããåœè©²èŠçŽ ããçºç«ããã
æ»ãå€ã¯ !defaultPreventedïŒDOM 仿§ïŒã dom_element_get_elements_by_class_name element.getElementsByClassName(name)ïŒdocument.getElementsByClassName ã¯
å¯Ÿå¿æžã¿ã ã£ãããèŠçŽ ã€ã³ã¹ã¿ã³ã¹çãäžžããšæªå¯Ÿå¿ã ã£ããquerySelectorAll ãš
åããèªèº«ã®åå«ã®ã¿ã«çµã蟌ããããžãã¯ãåå©çšããïŒãdom_element_get_elements_by_tag_name element.getElementsByTagName(tag)ïŒäžèšãšåãçç±ã§äžžããšæªå¯Ÿå¿ã ã£ãïŒãdom_element_get_elements_by_tag_name_ns element.getElementsByTagNameNS(namespace, localName)ïŒäžžããšæªå¯Ÿå¿ã ã£ãïŒãdom_element_query_selector element.querySelector: åå«ã«éå®ããŠæåã«ãããããèŠçŽ ã:scope
ïŒSelectors Level 4ãäžžããšæªå¯Ÿå¿ã ã£ãïŒã¯åŒã³åºãå
ã®èŠçŽ èªèº«ãæãã dom_element_query_selector_all element.querySelectorAll: åå«ã«éå®ããŠãããããèŠçŽ é
åã:scope
ïŒSelectors Level 4ãäžžããšæªå¯Ÿå¿ã ã£ãïŒã¯åŒã³åºãå
ã®èŠçŽ èªèº«ãæãã dom_focus element.focus()ïŒHTML5ãäžžããšæªå¯Ÿå¿ã ã£ããdocument.activeElement
ãšå¯Ÿã«ãªãæžã蟌ã¿åŽã以å㯠scrollIntoView ãšåã no-op ã§
document.activeElement ãåžžã« null åºå®ã«ãªã£ãŠããïŒãDomBridge:: focused_idx ãçŽæ¥æŽæ°ãã仿§ã©ããã®é åºïŒæ§èŠçŽ ã® blur/
focusout â æ°èŠçŽ ã® focus/focusinïŒã§ã€ãã³ããçºç«ãããã¬ã³ãã©åŽ
ã® WebEngine::focused_idïŒå®ã¯ãªãã¯/autofocus çšã®æååããŒçç¶æ
ïŒ
ãšã®åæã¯å¯Ÿè±¡å€ïŒè©³çŽ°ã¯ DomBridge::focused_idx ã®ã³ã¡ã³ãåç
§ïŒãdom_form_reset form.reset()ïŒHTML5ïŒã®å®è£
ã
ãã©ãŒã èŠçŽ é
äžã®ãã¹ãŠã® <input>, <select>, <textarea> ã®ãã©ãŒã ã©ã€ãå€ãåæç¶æ
ã«ãªã»ãããããdom_get_attribute dom_get_attribute_names dom_get_attribute_node element.getAttributeNode(name)ïŒäžžããšæªå¯Ÿå¿ã ã£ããgetAttribute
ããå€ã/äœã¬ãã«ãª Attr ããŒãçµç±ã®å®çªã€ãã£ãªã ïŒããã®åŠçç³»ã«ã¯
Attr å°çšã®å
éšè¡šçŸãç¡ããããelement.attributes ãšåã
{name, value, ownerElement} ã®ç°¡ç¥ãªããžã§ã¯ããè¿ããdom_get_attribute_node_ns element.getAttributeNodeNS(namespace, localName)ïŒäžžããšæªå¯Ÿå¿ã ã£ãïŒã
ä»ã® *AttributeNS ãšåãã namespace åŒæ°ã¯ç¡èŠã localName ã§æ€çŽ¢ãããdom_get_attribute_ns getAttributeNS/setAttributeNS/hasAttributeNS/removeAttributeNS
ïŒäžžããšæªå¯Ÿå¿ã ã£ããSVG çã§ setAttributeNS(null, 'viewBox', ...) ã®ããã«
䜿ãããå®çªã€ãã£ãªã ïŒããã®åŠç系㯠XML åå空éãäžåã¢ãã«åããŠããªãããã
第1åŒæ°ïŒnamespaceïŒã¯ç¡èŠããŠé NS çãšåã屿§ã¹ãã¢ãžå§è²ããç°¡ç¥å®è£
ïŒå€ãã®å®çšã³ãŒã㯠namespace ã« null ãæž¡ãããå®å®³ã¯å°ããïŒãdom_get_bounding_client_rect dom_get_client_rects element.getClientRects()ïŒDOM æšæºãäžžããšæªå¯Ÿå¿ã ã£ããæ¬æ¥ã¯è¡ããã¯ã¹
åäœã§è€æ°ã® DOMRect ãè¿ããããã®åŠçç³»ã«ã¯ããã¹ãã®è¡ãã©ã°ã¡ã³ã
ã¢ãã«èªäœãç¡ãïŒtext-overflow/ã€ã³ã©ã€ã³æè¿ãçãšåãæ¢åã®ç°¡ç¥åãš
åæ¹éïŒãããèŠçŽ 1ã€ã«ã€ã getBoundingClientRect() ãšåãç©åœ¢ã0å
ïŒæªã¬ã³ããªã³ã°ïŒã1åã ãæã€é
åãšããŠè¿ãïŒãdom_get_html element.insertAdjacentHTML(position, html)ã
element.getHTML(options?)ïŒDOMãinnerHTMLã²ãã¿ãŒã®æç€ºçã¡ãœããç
ãšããŠ2024幎é ã«æšæºåãäžžããšæªå¯Ÿå¿ã ã£ãïŒã仿§äžã®options
ïŒ{serializableShadowRoots, shadowRoots}ïŒã¯Shadow DOMèªäœã
ãã®åŠçç³»ã«ååšããªãããæå³ãæããç¡èŠãããinnerHTMLãšå
šãåã
get_inner_htmlããã®ãŸãŸåŒã¶ã ãã®ç°¡ç¥å®è£
ã2026-07-18 çºèŠã»å®è£
ã dom_get_root_node node.getRootNode()ïŒDOMæšæºãel.getRootNode() === document ãšãã
ãæ¥ç¶æžã¿ããã®å®çªå€å®ããshadow DOM 察å¿ã³ãŒãã®åå²ã§äœ¿ãããïŒãäžžããš
æªå¯Ÿå¿ã ã£ãããã®åŠç系㯠shadow DOM ãæããªãããã芪ã蟿ããéã蟿ã£ã
æäžäœããŒããè¿ãåçŽãªå®è£
ã§ä»æ§ã®æå³ïŒæãé ãç¥å
ïŒãæºãããdom_handle ð èŠçŽ ãã³ãã«ã Value ã«ããŠè¿ããidx ãç¡ããã° nullã dom_has_attribute dom_has_attribute_ns dom_has_attributes element.hasAttributes()ïŒäžžããšæªå¯Ÿå¿ã ã£ããåäžå±æ§ã®æç¡ãèŠã hasAttribute(name)
ã¯æ¢ã«å®è£
æžã¿ã ã£ãããã1ã€ã§ã屿§ãæã€ãããèŠããã¡ããæŒããŠããïŒãdom_has_child_nodes node.hasChildNodes()ïŒäžžããšæªå¯Ÿå¿ã ã£ããnode.childNodes.length > 0
ã®å®çªã®æéãçãã¡ãœããïŒãdom_has_pointer_capture element.hasPointerCapture(pointerId)ãdom_hide_popover dom_hit_test ð åº§æš (x, y) ãå«ãç©åœ¢ãæã€èŠçŽ ããé¢ç©ãå°ããïŒïŒæãæ·±ããã¹ãããïŒ
é ã«åæããå
±éãã«ããŒãelementFromPoint/elementsFromPoint ã§å
±æã dom_img_decode img.decode()ïŒäžžããšæªå¯Ÿå¿ã ã£ãã2026-07-17 çºèŠïŒãå®ãã³ãŒãæåŠã
远跡ããçµè·¯ãç¡ããããcompleteã²ãã¿ãŒãšåããsrcãããã°
ããŒãè©Šè¡æžã¿ãåæã§ãsrcãããã°è§£æ±ºã»ç¡ããã°DOMException ("EncodingError")ã§æåŠããPromiseãè¿ãç°¡ç¥å®è£
ãdom_insert_adjacent_element element.insertAdjacentElement(position, element)ã dom_insert_adjacent_html dom_insert_adjacent_text element.insertAdjacentText(position, text)ã dom_insert_before parent.insertBefore(newChild, refChild)ãref ã null/undefined ãªãæ«å°Ÿã dom_is_default_namespace dom_is_equal_node node.isEqualNode(other)ïŒäžžããšæªå¯Ÿå¿ã ã£ããåç
§ã§ã¯ãªãæ§é çãªç䟡æ§
â ã¿ã°å/屿§/åèŠçŽ ãå
šãŠäžèŽããã â ãèŠã DOM æšæºã¡ãœããïŒãæ¢åã®
outerHTML ã·ãªã¢ã©ã€ãºãåå©çšããæååãšããŠäžèŽãããã§è¿äŒŒãã
ïŒå±æ§ã¯ BTreeMap ç±æ¥ã§åžžã«åãé åºã«ã·ãªã¢ã©ã€ãºããããããæ¿å
¥é åºã«
äŸåããªãå®å®ããæ¯èŒã«ãªãïŒãdom_is_same_node node.isSameNode(other)ïŒäžžããšæªå¯Ÿå¿ã ã£ããDOM æšæºã®åç
§åäžæ§å€å®ã=== ãš
å矩ã ããDOM ããŒããæ±ãã©ã€ãã©ãªã§æç€ºçã«äœ¿ãããå®çªã¡ãœããïŒãdom_lookup_namespace_uri element.checkVisibility()ïŒDOM æšæºãäžžããšæªå¯Ÿå¿ã ã£ãïŒããªãã·ã§ã³åŒæ°
ïŒcheckOpacity/checkVisibilityCSS/contentVisibilityAuto çïŒã¯æªå¯Ÿå¿ã§
åžžã«ç¡èŠããç°¡ç¥å®è£
ãèªèº«ã®ç®åº visibility ã hidden/collapse ã®å Žåã
ããã³èªèº«ãŸãã¯ç¥å
ã®ããããã®ç®åº display ã none ã®å Žåã« false ãè¿ãã
node.lookupNamespaceURI(prefix)/.lookupPrefix(namespace)/
.isDefaultNamespace(namespace)ïŒäžžããšæªå¯Ÿå¿ã ã£ãã2026-07-16
çºèŠïŒããã®åŠç系㯠*AttributeNS/createElementNS ãšåãã XML
åå空éãäžåã¢ãã«åããŠããªãïŒdocument_create_element_ns ã¯
namespace åŒæ°ãç¡èŠããŠå§è²ããã®ã¿ïŒãããxmlns/xmlns:* 屿§ã
ç¥å
ãã§ãŒã³ããæ¢çŽ¢ããèª å®ãªå®è£
ã¯è¡ãããåžžã«ãåå空éãªããã衚ã
å€ïŒlookupNamespaceURI/lookupPrefix 㯠nullïŒãè¿ãç°¡ç¥å®è£
ã
isDefaultNamespace(namespace) ã¯ä»æ§äž lookupNamespaceURI(null) === namespace ãšç䟡ãªã®ã§ãlookupNamespaceURI ãåžžã« null ãè¿ã
ãã®ã¢ãã«ã§ã¯ namespace ã null/undefined ã®æã®ã¿ true ã«ãªããdom_lookup_prefix dom_matches dom_matrix_ctor ð new DOMMatrix([init]) / DOMMatrixReadOnly (Geometry Interfaces Module Level 1)
2D / 3D 倿è¡åã³ã³ã¹ãã©ã¯ã¿ãdom_matrix_invert dom_matrix_invert_self dom_matrix_multiply dom_matrix_multiply_self dom_matrix_rotate dom_matrix_rotate_self dom_matrix_scale dom_matrix_scale_self dom_matrix_skew_x dom_matrix_skew_x_self dom_matrix_skew_y dom_matrix_skew_y_self dom_matrix_to_string dom_matrix_transform_point dom_matrix_translate dom_matrix_translate_self dom_move_before parent.moveBefore(movedNode, referenceNode)ïŒDOMã2025幎ã«Chromeãž
å®è£
ãå
¥ã£ãæ¯èŒçæ°ããAPIãäžžããšæªå¯Ÿå¿ã ã£ãïŒã仿§äžã®äž»çŒã¯
ãremove()ããŠããinsertBefore()ãããå Žåãšç°ãªãã<iframe>ã®
èªã¿èŸŒã¿ç¶æ
ã»<video>ã®åçç¶æ
ã»ã«ã¹ã¿ã èŠçŽ ã®ã©ã€ããµã€ã¯ã«
ã³ãŒã«ããã¯çºç«çãä¿æãããŸãŸæšæ§é å
ãç§»åã§ããç¹ã«ãããã
ãã®åŠçç³»ã«ã¯ãããã®ãä¿æãã¹ãçããç¶æ
ãèªäœãå®è£
ãããŠ
ããªãïŒ<iframe>ã¯å®éã®ããã²ãŒã·ã§ã³ç¶æ
ãæããã<video>ã¯
å®åçãããªãçïŒãããå®åäžã¯insertBeforeãšåããdetachããŠãã
æå®äœçœ®ãžæ¿å
¥ãã®insert_beforeïŒdom_bridge.rsãæ¢ã«èªåã§å
ã®
芪ããå€ãå®è£
ïŒããã®ãŸãŸåå©çšããèª å®ãªç°¡ç¥å®è£
ã§ååã«ä»æ§ã©ãã
åäœãããreferenceNodeïŒnullå¯ïŒãthisã®åã§ãªãå Žåã¯
insertBeforeãšåãNotFoundErrorèŠåãèžè¥²ã2026-07-18 çºèŠã»å®è£
ãdom_noop ç¡å®³ãª no-opïŒæªå¯Ÿå¿ API çšïŒã dom_normalize node.normalize()ïŒäžžããšæªå¯Ÿå¿ã ã£ããé£ç¶ãã飿¥ããã¹ãããŒãã1ã€ã«é£çµãã
空ã®ããã¹ãããŒããåãé€ã DOM æšæºã¡ãœããïŒãdom_parser_ctor DOMParser ã³ã³ã¹ãã©ã¯ã¿ãdom_parser_parse_from_string DOMParser.prototype.parseFromString(str, type) ïŒDOM Parsing and Serialization §4.1ïŒã
å
¥åããã HTML æååã parse_html ã§ããŒã¹ããDomBridge ãžçµã¿èŸŒãã§ææžããŒããè¿åŽãããdom_path2d_ctor Path2D ã³ã³ã¹ãã©ã¯ã¿ (WHATWG HTML Canvas 2D Path2D API)ãdom_point_ctor ð new DOMPoint(x, y, z, w)ïŒå¹Ÿäœåœ¢äœããªããã£ãã2026-07-17 çºèŠã2026-07-21 æ¡åŒµïŒã
仿§ã©ãã z/w çç¥æã®æ¢å®å€ã¯ãããã 0/1ãDOMPointReadOnly ãå圢ç¶ã§ä»£çšã
matrixTransform(matrix) ã§ DOMMatrix ã«ãã座æšå€æã«å¯Ÿå¿ãdom_point_from_point ð dom_point_matrix_transform dom_prepend element.prepend(âŠnodes)ïŒå
é ã«è€æ°è¿œå ïŒé åºä¿æïŒã dom_quad_ctor ð new DOMQuad(p1, p2, p3, p4) (Geometry Interfaces Module Level 1)dom_quad_get_bounds dom_rect_ctor ð (x,y,w,h) ãã DOMRect çžåœã®ãã¬ãŒã³ãªããžã§ã¯ããçµã¿ç«ãŠãã
getBoundingClientRect/getClientRects ã§å
±æããã
new DOMRect(x, y, width, height)ïŒäžžããšæªå¯Ÿå¿ã ã£ããæåã§ç©åœ¢ã
æ§ç¯ããå®çªãã¿ãŒã³ã2026-07-17 çºèŠïŒãgetBoundingClientRect()ã
è¿ãmake_dom_rectãšåãããããã£åœ¢ç¶ïŒx/y/left/top/
width/height/right/bottomïŒã ããåŒæ°ã¯æŽæ°äžžãç¡ãã®æµ®åå°æ°
ç¹ã®ãŸãŸä¿æããïŒæåæ§ç¯ã§ã¯ãµããã¯ã»ã«å€ã仿§äžæå¹ãªããïŒã
DOMRectReadOnlyãåã圢ç¶ã®ããåºå¥ããåäžã³ã³ã¹ãã©ã¯ã¿ã§ä»£çšãã
ç°¡ç¥å®è£
ïŒfromRectéçã¡ãœããã»æžã蟌ã¿å¯èœããããã£ã®éãã¯
察象å€ïŒãdom_rect_from_rect ð dom_release_pointer_capture element.releasePointerCapture(pointerId)ãdom_remove element.remove()ïŒChildNode.remove()ãåŒæ°ç¡ãã§èªèº«ã芪ããåãå€ãïŒã
ãã ã<select>ã ãã¯HTMLSelectElement.remove(index)ãšããå¥ç©ã®
ãªãŒããŒããŒããæã¡ãæ°å€åŒæ°ãæž¡ãããå Žåã¯ãèªèº«ãåé€ãã§ã¯ãªã
ãæå®ã€ã³ããã¯ã¹ã®optionãåé€ããšããå
šãç°ãªãæå³ã«ãªãïŒä»æ§äžã®
å¥ã¡ãœãããããŸããŸååãªã ãïŒã以åã¯ãã®åºå¥ãç¡ããselect.remove(1)
ãåžžã«selectèªèº«ã芪ããåé€ããŠããŸãïŒoptionsåŽã®åé€ã§ã¯ãªãïŒ
ãã°ã ã£ããdom_remove_attribute dom_remove_attribute_node element.removeAttributeNode(attr)ãattr.name ã®å±æ§ãåé€ããåé€ãã
Attr ããŒããè¿ãïŒä»æ§äžãæªååšãªã NotFoundError ã ããã®åŠçç³»ã¯
äŸå€æ©æ§ãéå®çãªããç°¡ç¥åã null ãè¿ãïŒãdom_remove_attribute_ns dom_remove_child dom_remove_event_listener element.removeEventListener(type, fn, opts): äžèŽãããªã¹ããåé€ããã dom_replace_child parent.replaceChild(newChild, oldChild)ã眮æããã old ãè¿ãã dom_replace_children element.append(âŠnodes)ïŒæ«å°Ÿã«è€æ°è¿œå ïŒæååã¯ããã¹ãïŒã
element.replaceChildren(...nodes)ïŒDOM æšæºãel.innerHTML=''; el.append(...)
ã®1è¡çãšããŠäœ¿ãããå®çªã€ãã£ãªã ïŒãäžžããšæªå¯Ÿå¿ã ã£ããæ¢åã®
set_inner_html(idx, "")ïŒåãäžžããšã¯ãªã¢ïŒãš append/arg_to_node ãšåã
ãæåå㯠text nodeãDOM ããŒãã¯ãã®ãŸãŸã倿ãçµã¿åãããŠå®è£
ããã dom_replace_with element.replaceWith(âŠnodes)ïŒèªèº«ã nodes ã§çœ®æã dom_request_submit form.requestSubmit(submitter?)ïŒHTML5ïŒãäžžããšæªå¯Ÿå¿ã ã£ããæ¢åã®
dom_click ãšåã dispatch_event_in_interp çµç±ã§ submit ã€ãã³ãã
çºç«ããïŒpreventDefault() ã§äžæ¢å¯èœãsubmitter åŒæ°ã¯çŸç¶ç¡èŠïŒãdom_scroll_by element.scrollBy(x, y)/.scrollBy({top, left})ãçŸåšå€ããã®çžå¯Ÿç§»åã§ããç¹
ã®ã¿ scrollTo ãšç°ãªããdom_scroll_into_view element.scrollIntoView()/.scrollIntoView({behavior, block})ãäžžããš
no-opã ã£ãïŒHTML Standard §âscroll into viewâã®ç°¡ç¥å®è£
ãäžžããšæ¬ èœã
å®ãµã€ã www.sugi-lab.net ã®ããã²ãŒã·ã§ã³ãªã³ã¯ïŒtarget.scrollIntoView( {behavior:'smooth', block:'start'})ïŒãå®å
šã«ç¡å¹åãããŠãããã¯ãªãã¯
ããŠãäžåã¹ã¯ããŒã«ããªããšããå®å®³ããã£ãã2026-07-22çºèŠã»ä¿®æ£ïŒã
æ¢åã®window.scrollToãšåãpending_scroll_abs_yæ©æ§ïŒrender.rsã®
draw()åé ã§æ¶è²»ã»fire_scroll()åŒã³åºããŸã§è¡ããæ¢ã«åäœç¢ºèªæžã¿ã®
çµè·¯ïŒãåå©çšããã察象èŠçŽ ã®çŸåšã®ãã¥ãŒããŒãçžå¯ŸY座æš
ïŒget_rectãgetBoundingClientRectãšåãå€ïŒã«çŸåšã®ã¹ã¯ããŒã«é
ïŒwindow.scrollYïŒãå ç®ããææžå
ã®çµ¶å¯ŸY座æšãæ±ããŠèŠçŽ ã®äžç«¯ã
ãã¥ãŒããŒãäžç«¯ã«æ¥ãããã«ã¹ã¯ããŒã«ããïŒblock:'start'çžåœã
center/end/nearestã¯ç°¡ç¥åããã¹ãŠstartãšåäžèŠãããbehavior
ã¯æ¢åã®scrollToãšåæ§ã宿éã¢ãã¡ãŒã·ã§ã³ã®æŠå¿µãç¡ãããå³åº§ã«
åæ ããïŒãdom_scroll_to dom_select_add select.add(element, before)ïŒHTMLSelectElementçŽäžã®äŸ¿å©ã¡ãœããã
select.options.addãšå
šãåãæå³ã ããthisãoptionsã³ã¬ã¯ã·ã§ã³
é
åã§ã¯ãªã<select>èŠçŽ èªèº«ã«ãªãç¹ã ããéããäžžããšæªå¯Ÿå¿
ã ã£ããselect_options_addãšã»ãŒåãããžãã¯ã ãã_select_idx
é ãããããã£çµç±ã§ã¯ãªãthis_dom_idxã§çŽæ¥<select>ã®ã€ã³ããã¯ã¹
ãåãã2026-07-18 çºèŠã»å®è£
ïŒãdom_set_attribute dom_set_attribute_node element.setAttributeNode(attr)ãattr.name/attr.value ãèªã¿åã£ãŠ
éåžžã® setAttribute ãšåãã¹ãã¢ãžåæ ãããæ»ãå€ã¯ä»æ§äžã眮æããã
æ§ Attr ããŒãïŒç¡ããã° nullïŒããdom_set_attribute_ns dom_set_custom_validity element.setCustomValidity(msg): ã«ã¹ã¿ã æ€èšŒã¡ãã»ãŒãžãèšå®ã空æåã§ã¯ãªã¢ã
å
éšçã«ã¯é ã屿§ _custom_validity ã«ä¿åããvalidate_field ãæåªå
ã§åç
§ããã dom_set_html_unsafe element.setHTMLUnsafe(html)ïŒDOMãinnerHTMLã»ãã¿ãŒã®Trusted
Typesæ€èšŒãæç€ºçã«ãã€ãã¹ããçãšããŠæšæºåãäžžããšæªå¯Ÿå¿ã ã£ãïŒã
ãã®åŠçç³»ã«ã¯Trusted Typesã®åŒ·å¶èªäœãå®è£
ãããŠããªãããã
innerHTMLã»ãã¿ãŒãšå
šãåãset_inner_htmlããã®ãŸãŸåŒã¶ã ãã®
ç°¡ç¥å®è£
ã§ä»æ§äžã®å¯èŠçãªéãã¯ç¡ãã2026-07-18 çºèŠã»å®è£
ãdom_set_pointer_capture element.getBoundingClientRect(): ã¬ã€ã¢ãŠãåŸã®ç©åœ¢ïŒDomBridge.rectsãããŒãžåº§æšïŒãã
DOMRect 颚ãªããžã§ã¯ã {x,left,y,top,width,height,right,bottom} ãè¿ããæªç»é²ãªã 0ã
element.setPointerCapture(pointerId)ïŒPointer Eventsãäžžããšæªå¯Ÿå¿
ã ã£ãããã©ãã°æäœã§ el.setPointerCapture(e.pointerId) ããå®çª
ãã¿ãŒã³ïŒã dom_set_range_text input/textarea.setRangeText(replacement, start?, end?, selectMode?)
ïŒäžžããšæªå¯Ÿå¿ã ã£ãã2026-07-17 çºèŠã»å®è£
ïŒãstart/endçç¥æã¯
çŸåšã®selectionStart/.selectionEndã䜿ãïŒä»æ§ã©ããïŒã
selectModeã¯"select"ïŒçœ®æåŸã®ç¯å²ãéžæïŒ/"start"ïŒãã£ã¬ããã
眮æç¯å²ã®å
é ãžïŒ/"end"ïŒæ«å°Ÿãžãæ¢å®ïŒ/"preserve"ïŒå
ã®éžæäœçœ®ã
ç¶æããããšè©Šã¿ãïŒã«å¯Ÿå¿ããç°¡ç¥å®è£
ãdom_set_selection_range input/textarea.setSelectionRange(start, end, direction?)ïŒäžžããš
æªå¯Ÿå¿ã ã£ããselectionStart/.selectionEnd/.selectionDirection
ãšå¯Ÿã«ãªãäžæ¬èšå®ã¡ãœããã2026-07-17 çºèŠã»å®è£
ïŒã3ããããã£ãžã®
åå¥ä»£å
¥ãšåãå
éšå°çšå±æ§ãžãŸãšããŠä¿åããç°¡ç¥å®è£
ãdom_show_popover dom_split_text Text.splitText(offset)ïŒäžžããšæªå¯Ÿå¿ã ã£ãã2026-07-16 çºèŠã
CharacterDataç·šéã¡ãœãã矀ã®é£ã§çºèŠãããã¹ãããŒããoffsetäœçœ®ã§
2ã€ã«åå²ããåŸåãæ°ããããã¹ãããŒããšããŠçŽåŸã®å
åŒã«æ¿å
¥ããŠè¿ã
仿§ã©ããã®åäœãchar_data_charsãšåã char åäœãªãã»ããã®ç°¡ç¥å®è£
ïŒãdom_step_by ð input.stepUp(n?)/.stepDown(n?)ïŒHTML5ã<input type="number"/"range">
ã§å€ã step å»ã¿ã§å¢æžããå®çªã¡ãœããïŒãäžžããšæªå¯Ÿå¿ã ã£ããvalue/
step/min/max 屿§ãèªã¿ãmin/max ãããã°ã¯ã©ã³ãããŠãã
value 屿§ãžæžãæ»ãïŒstep="any"çããŒã¹äžèœãªå Žåã¯æ¢å®å€ 1 ã«
ãã©ãŒã«ããã¯ããããã®åŠçç³»ã®ä»ã®æ°å€å±æ§ããŒã¹ãšåãå¯å®¹ãªç°¡ç¥åïŒãdom_step_down dom_step_up dom_style_get_property_priority dom_style_get_property_value dom_style_item style.item(index)ïŒäžžããšæªå¯Ÿå¿ã ã£ããstyle.lengthãšå¯ŸïŒã
get_css_textã®çŽååæååã;ã§åå²ãçŽãç°¡ç¥å®è£
ïŒdom_props.rs
ã®lengthã²ãã¿ãŒãšåãããžãã¯ïŒãdom_style_remove_property dom_style_set_property thisïŒHost(âclassList:Nâ) ãªã©ïŒãã prefix ãå¥ãã㊠index ãåãåºãã
element.style.setProperty(name, value)/getPropertyValue(name)/removeProperty(name)
ãäžžããšæ¬ èœããŠããïŒçŽæ¥ã®ããããã£ä»£å
¥ el.style.color = 'red' ãšã
getComputedStyle().getPropertyValue() ã¯ãã£ãããã€ã³ã©ã€ã³ã¹ã¿ã€ã«ã®
ã¡ãœããçµç±ã®èªã¿æžããç¡ãã£ãïŒãç¹ã« CSS ã«ã¹ã¿ã ããããã£ïŒ--fooïŒã¯
camelCase ã®ããããã£ã¢ã¯ã»ãµçµç±ã§ã¯èšå®ã§ããªããããsetProperty ã®æ¬ èœã¯
ã«ã¹ã¿ã ããããã£ã䜿ãå®çšã³ãŒãã§ç¹ã«åœ±é¿ã倧ããã£ããdom_stylesheet_delete_rule ð dom_stylesheet_insert_rule ð dom_table_create_caption dom_table_create_tfoot dom_table_create_thead dom_table_delete_caption dom_table_delete_cell dom_table_delete_row dom_table_delete_tfoot dom_table_delete_thead dom_table_insert_cell dom_table_insert_row HTML5 Table DOMïŒtable.insertRow/.deleteRow/.rowsãtr.insertCell/
.deleteCell/.cellsïŒãäžžããšæªå¯Ÿå¿ã ã£ãïŒ2026-07-17 çºèŠãselect. options.add/.remove ãšåããåçã«æ§ç¯ãããå®çªã€ãã£ãªã ïŒãthead/
tbody/tfoot ãæç€ºçã«ã¢ãã«åãããåžžã«ææžé ã® descendants_by_tags
ã§ tr/td/th ãéçŽããç°¡ç¥å®è£
ïŒæ°èŠè¡ã¯ãåç
§è¡ã®èŠªãïŒæ¢åã®
tbodyãããã°ãã®äžãç¡ããã°tableçŽäžãžæ¿å
¥ããïŒã dom_toggle_attribute element.toggleAttribute(name[, force]) â æäœåŸã®ååšãè¿ãã dom_toggle_popover draw_src_from ð 転éå
ã®å€ããç»çŽ ãåãåºãã get_computed_style ð getComputedStyle(el): ç®åºã¹ã¿ã€ã«ãèªã host ãããã· computed:idx ãè¿ãã get_num_prop ð glyphs_for ð æååã¶ãã®å圢ãåãåºãã html_collection_item HTMLCollection.prototype.item(index)ïŒDOM Standard §4.2.1ïŒãhtml_collection_named_item HTMLCollection.prototype.namedItem(name)ïŒDOM Standard §4.2.1 / HTML Standard §4.10.21ïŒã
åå/åIDã®ã³ã³ãããŒã«ãè€æ°ããå Žå㯠RadioNodeList ãè¿ããmake_attr_node ð element.attributesïŒNamedNodeMapã{name,value} ã®ç°¡ç¥è¡šçŸïŒãšåã
圢㧠Attr ããŒãçžåœã®ãªããžã§ã¯ããäœããownerElement ãå«ãããmake_dom_rect ð make_html_collection HTMLCollection / HTMLFormControlsCollection ãªããžã§ã¯ããçæãããã«ããŒã
é
åæ©èœã«å ããDOM Standard §4.2.1 ã«æºæ ã㊠item(index) ããã³
namedItem(name) ã¡ãœãããæã€ãmake_radio_node_list RadioNodeList ãªããžã§ã¯ããçæãããã«ããŒïŒHTML Standard §4.10.21.1ïŒã
é
åæ§é ã«å ã .value (getter/setter) ã¢ã¯ã»ã¹ããã³ item(index) ã¡ãœããããµããŒããããnv ð ãã€ãã£ã颿°å€ãäœãã·ã§ãŒãã«ããã option_ctor ð new Option(text?, value?, defaultSelected?, selected?)ïŒHTML5ãäžžããš
æªå¯Ÿå¿ã ã£ãïŒãdocument.createElement('option') ãåå°ã«çµã¿ç«ãŠããparse_listener_opts ð addEventListener / removeEventListener ã®ç¬¬3åŒæ°ãè§£éããã
boolean ãªã capture ãã©ã°ããªããžã§ã¯ããªã {capture, once} ãèªãã parse_listener_signal ð addEventListener(type, fn, {signal})ïŒäžžããšæªå¯Ÿå¿ã ã£ãïŒã® signal
ãªãã·ã§ã³ãåãåºããAbortSignal ããããªããžã§ã¯ãïŒaborted ããããã£
ãæã€ïŒä»¥å€ã¯ç¡èŠãããpopover_toggle_extra ð element.showPopover()/.hidePopover()/.togglePopover(force?)ïŒPopover
APIãäžžããšæªå¯Ÿå¿ã ã£ãïŒã<dialog> ã® open 屿§ãšåãããå
éšå°çšå±æ§
ïŒ_popover_openïŒãä»ãå€ãããã ãã®ç°¡ç¥å®è£
ïŒcss.rs åŽã® UA æ¢å®
display åãæ¿ããšå¯ŸïŒãbeforetoggle/toggle ã€ãã³ãçºç«ã»
:popover-open ç䌌ã¯ã©ã¹ã»ã©ã€ããã£ã¹ãã¹ã¯å¯Ÿè±¡å€ãscroll_top_target ð element.click()ã以åã¯åãªã no-op ã§ãå®éã®ã¯ãªãã¯
ïŒonclick/addEventListener('click', ...) ãªã¹ãã®çºç«ïŒãäžååŒãèµ·ãããª
ãã£ããå®ããŠã¹æäœãããåŒã°ããæ¢åã® dispatch_click() ãåå©çšããã
checkbox/radio ã¯ä»æ§äžã¯ãªãã¯ãããšïŒãªã¹ãã®å®è¡åã«ïŒèªèº«ã®éžæç¶æ
ã
åãæ¿ããã以å㯠element.checked ãšãã JS ããããã£èªäœãäžžããšæªå®è£
ã ã£ãããããã®ç¶æ
åæ¿ãã§ããŠããªãã£ããéèŠ : åã name ãæã€
ã©ãžãªãã¿ã³éã®æä»éžæïŒ1ã€ãéžã¶ãšä»ãèªåã§è§£é€ããããã©ãžãªãã¿ã³ã®
æãåºæ¬çãªä»æ§äžã®æåïŒã以åã¯é察å¿ã®ç°¡ç¥åãšããŠæç€ºçã«èŠéãããŠãããã
uncheck_radio_group_siblings ãæ°èšãé
ç·ããã
element.scrollTo(x, y)/.scrollTo({top, left, behavior}) ãäžžããšæªå¯Ÿå¿
ã ã£ããelement.scrollTop èªäœã¯æ¢ã«å¯Ÿå¿æžã¿ïŒscroll_tops ã«åæ ããŠåæç»
èŠæ±ããå®è£
ïŒãªã®ã§ãããããã®ãŸãŸåŒã³åºãèãã©ãããŒãšããŠå®è£
ããã
ãã®åŠçç³»ã«æšªã¹ã¯ããŒã«ã¢ãã«ã¯ååšããªããã left/x ã¯ç¡èŠããïŒbehavior
ãåæ§ã宿éã¢ãã¡ãŒã·ã§ã³ã®æŠå¿µãç¡ãããå³åº§ã«åæ ããç°¡ç¥å®è£
ïŒãselect_options_add select.options.add(option, before?)ïŒHTML5 HTMLOptionsCollectionã
åçã«ããããããŠã³ãæ§ç¯ãã select.options.add(new Option(...)) ãšãã
å®çªã€ãã£ãªã ããoptions ãçŽ ã®é
åïŒã¡ãœãããäžåæããªãïŒãè¿ã
ã ãã ã£ãããäžžããšæªå¯Ÿå¿ïŒTypeError: not a functionïŒã ã£ããoptions
ååŸæã«é
åãªããžã§ã¯ãèªèº«ãž _select_idxïŒé ãããããã£ãæ¢åã®
_is_headers/_ta_kind çãšåãå
éšã¿ã°ä»ããã¿ãŒã³ïŒãä»èŸŒãã§ããã
ãã®é
åãçµç±ããŠå
ã® <select> ã蟿ããããã«ãããbefore ã¯ä»æ§ã©ãã
çç¥æã¯æ«å°Ÿè¿œå ãæ°å€ãªããã®äœçœ®ã®æ¢å option ã®åã<option> èŠçŽ
ãã®ãã®ã§ããããselect_options_named_item select.options.namedItem(name)ïŒHTMLOptionsCollectionãid/name
屿§ãäžèŽãã <option> ãæ¢ãå®çªã¡ãœãããèŠã€ãããªããã°ä»æ§ã©ãã
nullïŒãselect_options_remove select.options.remove(index)ïŒHTMLOptionsCollectionãäžèš add ãšå¯Ÿã«
ãªããæå®ã€ã³ããã¯ã¹ã® <option> ãåãé€ãå®çªã¡ãœããïŒãsplit_css_rules ð table_create_section ð table.createTHead()/.createTFoot()/.createCaption()ïŒäžžããšæªå¯Ÿå¿
ã ã£ãã2026-07-17 çºèŠã仿§äžãæ¢åã®è©²åœèŠçŽ ãããã°ãããè¿ãã
ç¡ããã°æ°èŠäœæããŠæ¿å
¥ãããåªçãªåäœïŒãçŽæ¥ã®åã®ã¿ã察象ãšãã
ïŒtHead/tFoot/captionã²ãã¿ãŒãšåãå¶çŽïŒãcaptionã¯æåã®åã
theadã¯æåã®åïŒcaptionã®åŸïŒãtfootã¯æåŸã®åãšããŠæ¿å
¥ãã
ç°¡ç¥å®è£
ïŒcolgroupãšã®çžå¯Ÿäœçœ®é¢ä¿ã¯å³å¯ã«ã¯å¯Ÿè±¡å€ïŒãtable_delete_section ð this_dom_idx ð thisïŒDOM èŠçŽ ãã³ãã«ïŒããããŒã index ãåãåºããthis_host_idx ð update_matrix_props ð xml_serializer_ctor ð new XMLSerializer()ïŒäžžããšæªå¯Ÿå¿ã ã£ãã.serializeToString(node)
ãšããå®çªãã¿ãŒã³ïŒãxml_serializer_serialize_to_string ð serializer.serializeToString(node)ãæ¢åã® element.outerHTML ã²ãã¿ãŒ
ïŒinterp.rsïŒãšåã DomBridge::get_outer_html ãåå©çšããïŒDOM èŠçŽ
ãã³ãã«ã§ãªãå€/æªæ¥ç¶ããŒãã¯ä»æ§ã®è©³çްãªäŸå€åå²ãçç¥ã空æååãè¿ã
ç°¡ç¥å®è£
ïŒã