页面样式优化属性

fullCalendar 刷新方法 1.6.3 版本

$('#calendar').fullCalendar('refetchEvents', function (event) {
    return true;
});

js 数字转大写非中文

    function rp(n) {
        var cnum = ['零', '一', '二', '三', '四', '五', '六', '七', '八', '九'];
        var s = '';
        n = '' + n; // 数字转为字版符串
        for (var i = 0; i < n.length; i++) {
            s += cnum[parseInt(n.charAt(i))];
        }
        return s;
    }

 like CONCAT('%',#{bannerName},'%')  //mybatis的模糊查询
 
 new SimpleDateFormat("yyyy-MM-dd").format(date); //date转string
 
 remove(\''+row.id+ '\',\''+row.cardNumber+ '\')    formatter传入多个参数

layer tips 属性

layer.tips(新加的内容,'选择节点',{time: 0, area: ['20%', '20%'], skin: 'layui-layer-rim', tips: [3, '#ffffff'], closeBtn: false});

time:为0时tips窗口不会消失

area:窗口大小设置

skin:官方的皮肤

tips:2 tips(默认)层的私有参数。支持上右下左四个方向,通过1-4进行方向设定。如tips: 3则表示在元素的下面出现。有时你还可能会定义一些颜色

closeBtn:右上脚的关闭按钮

示例:

layer.tips(‘老人暂无水浸数据’, ‘#bgWater’,{time: 3000,tipsMore: true,tips:[1, ‘#5BC0DE’]});


layer load方法 --加载视图

声明一个全局变量 【父窗口】
	var ii='';
                //弹出一个loading层
                ii = layer.load();
                //关闭方法
		function closeLoad() {
            layer.close(ii);
        }
	    //调用父窗口方法 --关闭加载层
        window.parent.closeLoad();



Jqery Trees属性

  1. 获取正在选中的树的id
    $('#jstree').on('changed.jstree',function(e,data) {//当前选中节点的id
        console.log(data.instance.get_node(data.selected[0]).id);
    });
  1. 单选父子不级联
 $('#jsTree').jstree({
            'core': {
                'data': tree,
                "multiple": false//单选
            },
            "plugins": ["checkbox"],
            "checkbox": {
                "keep_selected_style": false,//是否默认选中
                "three_state": false//父子级别级联选择
            }
        });

前端类型的样式优化属性

  1. table表格中对列与列之间,行与行之间的控制
		/*控制tr之间的间距*/
		border-spacing:0px 4px;
		/*需要用border-collapse & border-spacing联合控制td的间距;*/
		border-collapse:separate;
		border-spacing:20px;
  1. 设定表格内容过多不换行
		white-space: nowrap;
  1. 内容过多进行省略显示
    1. tabel添加样式style="table-layout:fixed"
    2. td添加样式
"overflow": "hidden", 
"text-overflow": "ellipsis", 
"white-space": "nowrap"
  1. 设置div圆角
border-radius:5px 5px 0 0;
border-radius:5px !important; //设置优先级
  1. 设置单选框距离
   <label class="radio-inline">
  1. 图片设置跟随容器自适应大小
        .noone .someone{
            /*设置图片自生硬*/
            background-size:contain,cover;
            width:100%;
            height: auto;
        }



  1. JQery选中事件详情
    8.1 select选中事件

        alert($("#sel option:selected").text());//方法一:获取select标签选中的option中的文本。
        alert($("#sel").find("option:selected").text());//方法二:获取select标签选中的option中的文本。

        alert($("#sel option:selected").val());//方法一:获取select标签选中的option中的value的值。
        alert($("#sel").find("option:selected").val());//方法二:获取select标签选中的option中的value的值。
        //------------------------------帅气的分割线,,下面有重点--------------------------------

        //当option是这样的:<option>cc</option>。即没有value属性的时候。自然也就没有value值。
        //这时候jquery就很纠结:写了段代码让我拿value的值,可是找到的option中根本没有value属性。
        //算了,把option中 的文本拿出来给你吧。
        //所以当选中<option>cc</option>这个option的时候,你会发现上边四个alert出来的值是一样的。都是option中的文本。
        //想要拿到option中的value的值,首先option得有value属性啊!!!

8.2 select 默认显示


    <option style="display: none;" value="">请选择</option>

8.2.1 select可搜索功能

        $("#userId").chosen({
            no_results_text: "没有找到结果!",//搜索无结果时显示的提示
            search_contains:true,   //关键字模糊搜索,设置为false,则只从开头开始匹配
            allow_single_deselect:true, //是否允许取消选择
            width:"100%"
        });

8.3 二级ul li元素动态加载click事件

  $(".clstwo ul").on("click", "li", function(e){
     //方法区
  });

8.4 ul il 样式tab切换

---样式
 .timebtn li {
            padding: 1px 8px;
            border: 1px solid #ccc;
            float: left;
            list-style: none;
        }

        .timebtn .activeli {
            background-color: #00A3FF;
            color: #fff;
        }
---------------------------------------------------------------------------------
                   <div class="ibox-tools">
                        <ul class="timebtn" id="orderNum">
                            <li class="activeli">周</li>
                            <li>月</li>
                            <li>年</li>
                        </ul>
                    </div>
//li点击事件
$("#order").on("click","li",function(){
    if($(this).hasClass("activeli")){
        return;
    }else{
        $("#order").find("li").removeClass("activeli");
        $(this).addClass("activeli");
    }
});



  1. Jqery validate无法校验select

ignore:":hidden:not(select)",

5.3 JQery Validate 对身份证及手机号的验证

  var icon = "<i class='fa fa-times-circle'></i> ";
    $.validator.addMethod("checkCardNo", function (value, element, params) {
        var cardNo = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
        return this.optional(element) || (cardNo.test(value));
    }, icon + "请输入正确的身份证号码!");


    $.validator.addMethod("checkPhone", function (value, element, params) {
        var phone = /^1[3456789]\d{9}$/;
        return this.optional(element) || (phone.test(value));
    }, icon + "请输入正确的手机号码!");

使用后台验证

 remote: {
                        url: "/live/validateByCard",     //后台处理程序
                        type: "post",               //数据发送方式
                        dataType: "json",           //接受数据格式 
                        data: {                     //要传递的数据
                            cardNo:function () {
                                return $("#oldCardNo").val()
                            }
                        }
                    }

后台处理方法 注意 返回的参数必须是true或者false

   @ResponseBody
    @PostMapping("/validateByCard")
    public String validateByCard(String cardNo) {
        List<UserBasicInfoDO> list = userBasicInfoService.list(new QueryWrapper<UserBasicInfoDO>().eq("card_no", cardNo).eq("del_flag", "0"));
        if (list.size()>0){
            return "false";
        }
        return "true";
    }

Jqery实现点击图片显示方法图片,再次点击进行恢复原样式

  1. 添加style样式

 /*全屏显示大图*/
    .opacityBottom{
        width: 100%;
        height: 100%;
        position: fixed;
        background:rgba(0,0,0,0.8);
        z-index:1000;
        top: 0;
        left: 0
    }
    .none-scroll{
        overflow: hidden;
        height: 80%;
    }
    .bigImg{
        width:80%;
        height: 80%;
        left:10%;  //可注释
        top:10%;   //可注释
        position:fixed;
        z-index: 10001;
    }

添加

  1. 添加点击事件 给指定图片添加 imgClick(this)事件
    【2019年8月21日20:09:56】 添加淡入淡出 进行视觉短暂优化
    【2019年8月26日11:54:53】 添加动态缩放图片方式
 function imgClick(i) {
                var imgsrc = $(i).attr('src');
                var opacityBottom = '<div id="opacityBottom" style="display: none"><img title="缩放" class="bigImg" src="'+ imgsrc +'" ></div>';
                $(document.body).append(opacityBottom);
                toBigImg();//变大函数
           // 方法中可以通过设置top,left等参数来指定图片初始参数;--使用e-smart-zoom-jquery.js 使图片可放大
           //实现此样式,需要引入e-smart-zoom-jquery.js及jquery
           // $(".bigImg").smartZoom({
           //     'left': '0px',
           //     'top':'2px'
           //     })
            }
            function toBigImg(){
                $("#opacityBottom").fadeIn();
                $("#opacityBottom").fadeIn("slow");
                $("#opacityBottom").fadeIn(5000);
                $("#opacityBottom").addClass("opacityBottom");
                $("#opacityBottom").show();
                $("html,body").addClass("none-scroll");//下层不可滑动
                $(".bigImg").addClass("bigImg");
                /*隐藏*/
                $("#opacityBottom").bind("click",clickToSmallImg);
                $(".bigImg").bind("click",clickToSmallImg);
                var imgHeight = $(".bigImg").prop("height");
                function clickToSmallImg() {
                    $("html,body").removeClass("none-scroll");
                    $("#opacityBottom").remove();
                }
            }

2019年8月26日10:36:43 -> 优化 增加title及光标样式

‘img title=“查看大图” οnclick=“imgClick(this)” src="http://49.4.82.173:10000’+value+’" style=“cursor: pointer; width: 100px;height: 50px;” ';


添加使用富文本编辑器并可以回显


  1. 创建div
<div class="form-group">
	<label class="col-sm-3 control-label">内容:</label>
	<div class="col-sm-8">
	<input id="content" name="content" th:value="${introduce.content}" class="form-control" type="hidden">
	<div class="ibox-content no-padding">
	<div id="content_sn" class="summernote"></div>
</div>
</div>
</div>
  1. 给div创建文本编辑器
$().ready(function() {
    $('.summernote').summernote({
        height : '220px',//宽度
        lang : 'zh-CN',//语言
        callbacks: {//图片上传事件
            onImageUpload: function(files, editor, $editable) {
                sendFile(files);
            }
        }
    });
    var text = $("#content").val();
    $("#content_sn").summernote('code',text);
	validateRule();
});
  1. 在更新的时候给对象属性赋值
    var content_sn = $("#content_sn").summernote('code');
    $("#content").val(content_sn);
  1. sendFile(files);事件
//编辑器新增的ajax上传图片函数
function sendFile(files, editor, $editable) {
    var size = files[0].size;
    if((size / 1024 / 1024) > 2) {
        alert("图片大小不能超过2M...");
        return false;
    }
    var formData = new FormData();
    formData.append("file", files[0]);
    $.ajax({
        data : formData,
        type : "POST",
        url : "/system/versionUpgrade/uploadFile",    // 图片上传出来的url,返回的是图片上传后的路径,完整路径需http://ip:端口
        cache : false,
        contentType : false,
        processData : false,
        dataType : "json",
        success: function(data) {//data是返回的hash,key之类的值,key是定义的文件名
            console.log(data.imgSrc);
            $('.summernote').summernote('insertImage',"http://49.4.82.173:10003"+data.imgSrc);
        },
        error:function(){
            alert("上传失败");
        }
    });
}

  1. Thymeleaf 进行日期格式化
<span th:text="${#dates.format(billingForm.startTime,'yyyy-MM-dd HH:mm:ss')}">4564546</span>

6.1 thymeleaf 代码提示

<html xmlns:th="http://www.thymeleaf.org">  

6.2 js使用thymeleaf的模板

th:inline=“javascript”

6.2 thymeleaf进行循环遍历


   th:each属性用于迭代循环,
    语法:th:each="obj,iterStat:${objList}"
    迭代对象可以是Java.util.List,java.util.Map,数组等;
    iterStat称作状态变量,属性有:
    index:当前迭代对象的index(从0开始计算)
    count: 当前迭代对象的index(从1开始计算)
    size:被迭代对象的大小
    current:当前迭代变量
    even/odd:布尔值,当前循环是否是偶数/奇数(从0开始计算)
    first:布尔值,当前循环是否是第一个
    last:布尔值,当前循环是否是最后一个
    -------------------------------------
    数组循环:  
            <div th:each="arrayS:${arrays}">  
            <div th:text="${arrayS}"></div>  
            </div>  
     ------------------------------------
     Map循环:  
            <div th:each="mapS:${map}">  
            <div th:text="${mapS}"></div>  
            </div>  
        </li> 
  1. 使用datetimepicker插件进行显示到时分秒
  $('#startTime,#endTime').datetimepicker({
            format: 'yyyy-mm-dd hh:ii:00',
            autoclose: true,
            language: 'zh-CN',
            minuteStep: 10
        });
  1. select回显
<select οnchange="getChilds(this.value)" class="form-control select2" id="catId" name="catId">
   <option value=""> -- 请选择 -- </option>
   <option  th:selected="${goods.catId eq c.id}" th:each="c:${categoryList}"  th:value="${c.id}" th:text="${c.name}" value="1">蔬菜</option>
</select>

8.1 刷新之后数据擦除

    $('#searchState')[0].selectedIndex=0;
    $('#searchSex')[0].selectedIndex=0;
  1. 使用SpringBoot datetimepicker插件 只选择到年月日
$("#datepickero").datetimepicker({
		language: 'zh-CN',
		weekStart: 0,
		todayBtn: true,
		autoclose: true,
		todayHighlight: true,
		startView: 2,
		minView: 2,
		forceParse: 0,
		//初始化时设置时间格式即可
		format:'yyyy-mm-dd',
		clearBtn:true
	});

9.1 只选择时分秒

    $('.form-time').datetimepicker({
        format:"hh:ii:00",
        language:"zh-CN",
        todayBtn:true,
        minuteStep: 1,//分钟间隔1分钟
        autoclose: 1,//选择后自动关闭
        minView: 0,
        startView: 1
    });



  1. Echarts的快捷操作

10.1 Echarts 图表的自适应

		//Echart的自适应  ->window.onresize事件会在窗口或框架被调整大小时发生。
        window.onresize = function () {
            myChart1.resize(); //resize方法是监听包含canvas的div的元素的变化的,
            //根据其变化改变自身大小
        }

java 类型的快捷开发

日期类型的格式化

  1. 后台传入前台格式化
 @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
 private Date time;
  1. 前台传入后台时候
@DateTimeFormat(pattern=”yyyy-MM-dd HH:mm:ss”) 【这个是可以和上面的注解一块儿使用的】
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值