jsHelper
jsHelper 类用于生成 js 代码的助手,可以方便的操作 DOM 元素。
构造
构造方法
定义
php
public function __construct(null|string|js|array ...$codes);参数
$codes:JS 代码,可以是字符串或js对象,也可以是可被忽略的null,或者是以上类型的数组。
示例:
php
$js1 = new jsHelper('console.log("hello world");');
$js2 = new jsHelper
(
'const message = "hello"',
'const name = "world";',
js('console.log(message, name)'),
);辅助方法
通过与 jsHelper 类同名的辅助函数来快速创建 jsHelper 对象。
定义
php
function jsHelper(null|string|js|array ...$codes): jsHelper;参数
$codes:JS 代码,可以是字符串或js对象,也可以是可被忽略的null,或者是以上类型的数组。
返回值
js对象。
例如:
php
jsHelper
(
'const message = "hello"',
'const name = "world";',
js('console.log(message, name)'),
);提示
推荐使用辅助方法 jsHelper() 来创建 jsHelper 对象,相比较 new jsHelper() 语法,辅助方法更加简洁。
方法
toggleHide
隐藏指定的元素。
定义
php
public function toggleHide(string $selector): self参数
$selector:要隐藏的元素的选择器。
返回值
self自身,支持链式调用。
示例:
php
jsHelper()->toggleHide('#message');
// 生成的 JS 代码:$('#message').hide();toggleShow
切换显示或隐藏指定的元素,如果不指定参数则自动判断。
定义
php
/** 自动切换显示或隐藏指定的元素。 */
public function toggleShow(string $selector): self
/** 指定判断代码决定是否显示或隐藏指定的元素。 */
public function toggleShow(string $selector, string $toggleCode): self参数
$selector:要显示的元素的选择器。$toggleCode:判断代码,如果计算后返回true则显示,否则隐藏。
返回值
self自身,支持链式调用。
addClass
给指定的元素添加 CSS 类。
定义
php
public function addClass(string $selector, string $class): self参数
$selector:要添加 CSS 类的元素的选择器。$class:要添加的 CSS 类。
返回值
self自身,支持链式调用。
removeClass
从指定的元素移除 CSS 类。
定义
php
public function removeClass(string $selector, string $class): self参数
$selector:要移除 CSS 类的元素的选择器。$class:要移除的 CSS 类。
返回值
self自身,支持链式调用。
toggleClass
切换指定的元素的 CSS 类。
定义
php
/** 切换指定的元素的 CSS 类。 */
public function toggleClass(string $selector, string $class): self
/** 指定判断代码决定是否切换指定的元素的 CSS 类。 */
public function toggleClass(string $selector, string $class, string $toggleCode): self参数
$selector:要切换 CSS 类的元素的选择器。$class:要切换的 CSS 类。$toggleCode:判断代码,如果计算后返回true则添加,否则移除。
返回值
self自身,支持链式调用。
setHtml
设置指定元素的 HTML 内容。
定义
php
public function setHtml(string $selector, string $html): self参数
$selector:要设置 HTML 内容的元素的选择器。$html:要设置的 HTML 内容。
返回值
self自身,支持链式调用。
setText
设置指定元素的文本内容。
定义
php
public function setText(string $selector, string $text): self参数
$selector:要设置文本内容的元素的选择器。$text:要设置的文本内容。
返回值
self自身,支持链式调用。
setVal
设置指定元素的值。
定义
php
public function setVal(string $selector, string $val): self参数
$selector:要设置值的元素的选择器。$val:要设置的值。
返回值
self自身,支持链式调用。
setCss
设置指定元素的 CSS 属性。
定义
php
/** 设置指定元素的 CSS 属性。 */
public function setCss(string $selector, string $name, string $value): self
/** 设置指定元素的多个 CSS 属性。 */
public function setCss(string $selector, array $css): self参数
$selector:要设置 CSS 属性的元素的选择器。$name:要设置的 CSS 属性名称。$value:要设置的 CSS 属性值。$css:要设置的 CSS 属性数组,键为属性名称,值为属性值。
返回值
self自身,支持链式调用。
setAttr
设置指定元素的标签属性。
定义
php
/** 设置指定元素的属性。 */
public function setAttr(string $selector, string $name, string $value): self
/** 设置指定元素的多个属性。 */
public function setAttr(string $selector, array $attrs): self参数
$selector:要设置属性的元素的选择器。$name:要设置的属性名称。$value:要设置的属性值。$attrs:要设置的属性数组,键为属性名称,值为属性值。
返回值
self自身,支持链式调用。
removeAttr
移除指定元素的标签属性。
定义
php
public function removeAttr(string $selector, string $name): self参数
$selector:要移除属性的元素的选择器。$name:要移除的属性名称。
返回值
self自身,支持链式调用。
setProp
设置指定元素的属性。
定义
php
/** 设置指定元素的属性。 */
public function setProp(string $selector, string $name, string $value): self
/** 设置指定元素的多个属性。 */
public function setProp(string $selector, array $props): self参数
$selector:要设置属性的元素的选择器。$name:要设置的属性名称。$value:要设置的属性值。$props:要设置的属性数组,键为属性名称,值为属性值。
返回值
self自身,支持链式调用。
removeProp
移除指定元素的属性。
定义
php
public function removeProp(string $selector, string $name): self参数
$selector:要移除属性的元素的选择器。$name:要移除的属性名称。
返回值
self自身,支持链式调用。
triggerEvent
触发指定元素的事件。
定义
php
/** 触发指定元素的事件。 */
public function triggerEvent(string $selector, string $event): self
/** 触发指定元素的事件并传递数据。 */
public function triggerEvent(string $selector, string $event, mixed $data): self参数
$selector:要触发事件的元素的选择器。$event:要触发的事件名称。$data:要传递的数据。·
返回值
self自身,支持链式调用。
onEvent
为指定元素绑定事件。
定义
php
/** 为指定元素绑定事件。 */
public function onEvent(string $selector, string $event, string|jsCallback $callback): self
/** 为指定元素绑定委托事件。 */
public function onEvent(string $selector, string $event, string $targets, string|jsCallback $callback): self参数
$selector:要绑定事件的元素的选择器。$event:要绑定的事件名称。$targets:要绑定委托事件的目标元素的选择器。$callback:要绑定的事件回调函数。
返回值
self自身,支持链式调用。
offEvent
为指定元素解绑事件。
定义
php
/** 为指定元素解绑事件。 */
public function offEvent(string $selector, string $event): self
/** 为指定元素解绑事件(指定回调函数)。 */
public function offEvent(string $selector, string $event, string $callback): self
/** 为指定元素解绑委托事件(指定回调函数和目标选择器)。 */
public function offEvent(string $selector, string $event, string $targets, string $callback): self参数
$selector:要解绑事件的元素的选择器。$event:要解绑的事件名称。$targets:要解绑委托事件的目标元素的选择器。$callback:要解绑的事件回调函数。
返回值
self自身,支持链式调用。