zoukankan      html  css  js  c++  java
  • ajax--参数默认值问题

    注:通过参数默认值,能让参数映射更加灵活,有些参数可以不必传递,如果传递则
    覆盖默认。并且永远都是后面的覆盖前面的内容
    通过$.extend合并对象

    语法1: var newobj= $.extend(obj,obj1,obj2,obj3.......);
    即大括号中所有的内容会以前面对象的内容为基准,若是有重复的则合并后显示后面
    对象的内容(即前面对象的内容被覆盖),不一致的则原样合并输出。


    语法2:合并过后不会改变任意对象的内容

    var newobj=$.extend({},obj,obj1,obj2..........);

    shadow.js

    jQuery.fn.shadow_default = function (option) {
    //设置默认值对象
    var defaults ={
    slices:5,
    opacity:0.5,
    zIndex:-1
    };
    //合并defaults和option
    var opt= $.extend(defaults,option);

    //获取到每个已封装的元素
    //this表示jQuery对象
    this.each(function () {
    $obj = $(this);//将遍历出来的元素转换成jQuery对象
    //更改i的值:10 20都可以,能够改变阴影效果
    for (var i = 0; i <opt.slices; i++) {
    var $newObj = $obj.clone();//克隆出来5个新的对象
    //确定元素的位置。使用绝对定位,设置top和left的值偏移量大小决定最终的阴影位置
    $newObj.css({
    position: "absolute",
    top: $obj.offset().top + i,
    left: $obj.offset().left + i,
    zIndex: opt.zIndex,//层级并没有太大关系,
    margin: 0,
    opacity: opt.opacity
    }).appendTo("body");
    }
    });
    }


    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>demo</title>
    <script src="js/jquery.min.js"></script>
    <script src="js/shadow.js"></script>
    <script>
    $(document).ready(function () {
    // $("h1").shadow();//调用对象方法的效果
    // $("h1").shadow_simple(7,0.3,-1);//调用简单参数实现效果,Y用户自己传递参数
    // $("h1").shadow_map(10,0.5,-1);//这样直接传递参数是不会识别的,因为这样无法识别到它的属性
    //参数映射方式处理
    // $("h1").shadow_map({
    // slices: 5,
    // opacity: 0.5,
    // zIndex: -1
    // });

    $("h1").shadow_default(); //调用参数默认值方法(可以传递参数也可以不传递,不传递就显示默认值,传递了就会覆盖默认值)

    dmeo:
    //定义对象数组时没有$符号,否则没有效果
    var obj1 = {name: "Linda", age: 29, hobby: "apple"};
    var obj2 = {name: "Bob", age: 30, gender: "Male"};
    //即大括号中所有的内容会以前面对象的内容为基准,若是有一样的则合并后显
    // 示后面对象的内容(前面对象的内容被覆盖),不一致的则原样合并输出。
    var newObj = $.extend(obj1, obj2);
    console.log(obj1);
    console.log(obj2);
    console.log(newObj);
    });

    </script>
    </head>
    <body>
    <h1>Hello My Name Is Anny,I am 20 years old!</h1>
    </body>
    </html>
    没有人能一路单纯到底,但是要记住,别忘了最初的自己!
  • 相关阅读:
    poj 3662 Telephone Lines
    费马小定理证明
    CodeForces 1058 F Putting Boxes Together 树状数组,带权中位数
    共价大爷游长沙 lct 维护子树信息
    牛客暑假多校 F RIKKA with Line Graph
    牛客暑假多校 H Prefix sum
    HDU-6437 Videos
    模板汇总——AC自动机
    模板汇总——逆元
    模板汇总——LCT
  • 原文地址:https://www.cnblogs.com/LindaBlog/p/9267138.html
Copyright © 2011-2022 走看看