创建一个统一样式的复选框元素,或者解析转换页面上特定类型的 label 标签为复选框元素。
function createCheckbox(opts?: CheckboxOptions): HTMLElement
复选框初始参数,结构为
interface CheckboxOptions { type?: string; label?: string; checked?: boolean; imageHeight?: Number; checkedNode?: HTMLElement; uncheckedNode?: HTMLElement; customerAttributes?: { [key: string]: string }; onchange?: (this: HTMLInputElement, ev: Event) => any; }
复选框的自定义 className
复选框默认是否可用
复选框图标的样式,可选值目前有 fa-regular
、fa-light
、fa-solid
复选框的标签文本,或者想要呈现的元素
初始是否选中
为图片复选框时的图片限制高度
为图片复选框时的选中时显示的元素
为图片复选框时的未选中时显示的元素
自定义属性,例如
{ 'data-id': 'xxxxxx', 'disabled': '' }
复选框改变时触发的事件
function resolveCheckbox(container?: HTMLElement, legacy?: boolean): HTMLElement
将把此 HTML 元素,为 null 则把 document.body 下的所有 label[data-checkbox]
元素解析为复选框,[data-id]
为复选框元素的
id,包含
[data-checked]
时复选框默认选中。
当该元素无子元素时,[data-type]
同上述参数中的 type?: string
,[data-label]
同上述参数中的
label?: string
。
当该元素有子元素时,解析为图片复选框,class 为 checked
、unchecked
的子元素将分别在选中与未选中时显示。
是否开启兼容模式,启用兼容模式时将试图匹配 input[type="checkbox"]
标签,与其周围的 label,将其转换为统一样式的复选框。
<div id="checkbox-sample"> <!-- 1 --> <label data-checkbox data-type="fa-light" data-label="Checkbox Light"></label> <!-- 2 --> <label data-checkbox data-checked data-label="Checkbox Regular"></label> <!-- 3 --> <label data-checkbox data-type="fa-solid" data-label="Checkbox Solid"></label> <!-- 4 --> <label data-checkbox> <code class="checked">Checked</code> <code class="unchecked">Unchecked</code> </label> <!-- 5 --> <input id="check-status" type="checkbox"/> <label for="check-status">Label for Status</label> </div> <script type="text/javascript"> window["lib-ui"].resolveCheckbox(document.querySelector("#checkbox-sample"), true); </script>