在插件开发中,能不能将要操纵的dom标签预先定义在一个数组a中,然后每次调用的时候初始化函数,然后通过指定指针来操纵dom?

发布于 2022-09-05 21:03:56 字数 756 浏览 16 评论 0

在插件开发中,能不能将要操纵的dom标签预先定义在一个数组a中,然后每次调用的时候初始化函数,然后通过指定指针来操纵dom?

var Settings = (function () {

    var $this = $(this);
    var $block = $this.find(".RegLcon.block"),
        $PhoneNumber = $block.find("input[name='PhoneNumber']"),
        $Email = $block.find("input[name='Email']"),
        $Password = $block.find("input[name='Password']"),
        $CfPassword = $block.find("input[name='PwdConfirm']"),
        $codeVal = $block.find("input[name='codeVal']"),
        $Code = $block.find("input[name='Code']");
    var a = [$PhoneNumber,$Email,$Password,$CfPassword,$codeVal,$Code];
    return function () {
        return a;
    }
})();
$.fn.regUser = function(){
$(Settings()[0]).css("background-color","pink");}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

表情可笑 2022-09-12 21:03:58

你这样写是可以的,但是不便于后期维护啊。
建议a定义为json对象,下标换成具体的键名。

如下:

...
var $this = $(this);
var $block = $this.find(".RegLcon.block");
var a = {
    $PhoneNumber: $block.find("input[name='PhoneNumber']"),
    $Email: $block.find("input[name='Email']"),
    $Password: $block.find("input[name='Password']"),
    $CfPassword: $block.find("input[name='PwdConfirm']"),
    $codeVal: $block.find("input[name='codeVal']"),
    $Code: $block.find("input[name='Code']")
};
return a;
...

var settings = Setting(); //一次调用,缓存起来
$(settings['$PhoneNumber']).css("background-color","pink");
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文