首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将函数转换为JQuery插件

如何将函数转换为JQuery插件
EN

Stack Overflow用户
提问于 2018-07-06 14:43:38
回答 2查看 90关注 0票数 0

我想学习如何编写Jquery plugin.This是我的普通函数,并将其转换为jquery插件,你能建议我怎么做吗?

这样我就可以很容易地理解如何将函数转换为插件。

代码语言:javascript
运行
复制
function probe_Validity(element) {
  var validate = true;
  $(".required-label").remove();

  var warnings = {
    text: "Please enter Name"
  };

  element.find(".required").each(function() {
    var form_Data = $(this);

    if (form_Data.prop("type").toLowerCase() === 'text' && form_Data.val() === '') {
      form_Data.after('<div class="required-label">' + warnings.text + '</div>').addClass('required-active');
      validate = false;
    }
    if (validate) {
      return true;
    } else {
      return false;
    }

    $(function() {
      $(".required").on("focus click", function() {
        $(this).removeClass('required-active');
        $(this).next().remove();
      });
    });
  });
}
EN

回答 2

Stack Overflow用户

发布于 2018-07-06 14:48:22

看看这个项目jQuery plugin boilerplate把它当作一个基本的插件定义,查找它,遵循步骤并根据你的需要进行调整。

票数 0
EN

Stack Overflow用户

发布于 2018-07-06 14:53:05

这很容易做到,你只需使用

代码语言:javascript
运行
复制
jQuery.fn.theNameOfYourFunction = function() {}

然后,您可以像下面这样获取调用函数的元素:

代码语言:javascript
运行
复制
var element = $(this[0])

所以你的函数应该是:

代码语言:javascript
运行
复制
jQuery.fn.probe_Validity = function() {

        var element = $(this[0]);
        var validate = true;
        $(".required-label").remove();

        var warnings = {
            text: "Please enter Name"
        };

        element.find(".required").each(function() {

            var form_Data = $(this);

            if (form_Data.prop("type").toLowerCase() === 'text' && form_Data.val() === '') {
                form_Data.after('<div class="required-label">' + warnings.text + '</div>').addClass('required-active');
                validate = false;
            }
            if (validate) {
                return true;
            } else {
                return false;
            }

            $(function() {
                $(".required").on("focus click", function() {
                    $(this).removeClass('required-active');
                    $(this).next().remove();
                });
            });
        });
    };

这可以这样命名:

代码语言:javascript
运行
复制
$('#id').probe_Validity ()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51204433

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档