欢迎您访问我的笔记本站旨在于记录一些平时工作中遇到的一些问题和解决方法,方便查阅,部分内容来源于网络,如有侵权请联系我删除
  • 微信微信
您现在的位置是:首页 > JQuery/Js

JS写插件的简单示例-[原创]

日期:2019-01-16 10:56:39 作者:tanyi 来源:我的笔记 浏览:1120 次
一个简单的插件示例,大概功能是点击添加,会增加一块元素,每块元素对应一个删除按钮,点击删除可删除当前的这块html,这个功能一般后台会用到比较多,这里只是简单演示,没有样式美化,凑合看吧,主要是简单演示一下插件写法

html区域:

<div id="parent">
    <div  class="son">
        <div style="width: 300px;height: 100px;border: 1px solid"><input type="text"></div>
        <button class="del">删除</button>
    </div>
</div>
<button id="add" >添加</button>


依赖jq,所以需要引入jq:

<script src="jquery-3.2.1.min.js"></script>


插件内容:

(function($){
    $.add_demo=function(config){
        if(!config.parent || !config.son || !config.add || !config.del){
            alert('缺少必要参数或参数值不正确');
            return;
        };
        add(config);
        del(config);
    };

    //删除元素
    function del(config){
        $(config.del).click(function(){
            $(this).parent(config.son).remove();
        });
    };

    //添加元素
    function add(config){
        var son_html=$(config.parent).find(config.son+':last').prop("outerHTML");
        if(config.son_html) son_html=config.son_html;
        $(config.add).click(function(){
            if(!son_html){
                alert('没有添加的元素');
                return;
            }
            $(config.parent).append(son_html);
            del(config);
        });
    };
})(jQuery)


调用示例:

$.add_demo({
    parent:'#parent', //父元素
    son:'.son', //子元素
    add:'#add', //添加按钮
    del:'.del', //删除按钮\
    son_html:'' //子元素html
});

image.png

提交评论
评论列表