| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- define(['jquery', 'layui'], function($, layui) {
- var $ = layui.jquery;
- var pearTheme = {};
- pearTheme.changeTheme = function (target) {
- var color = localStorage.getItem("theme-color-color");
- var second = localStorage.getItem("theme-color-second");
- this.colorSet(color, second);
- //todo iframe暂时不支持
- /*if (target.frames.length == 0) return;
- for (var i = 0; i < target.frames.length; i++) {
- try {
- if(target.frames[i].layui == undefined) continue;
- target.frames[i].layui.theme.changeTheme(target.frames[i]);
- }
- catch (error) {
- console.log(error);
- }
- }*/
- }
- pearTheme.colorSet = function(color, second) {
- var style = '';
- style += ':root,.light {--lay-color-primary: ' + color + ';--lay-color-accent: ' + second + ';}';
- style += '.layui-input:focus,.layui-textarea:focus {border-color: ' + color + '!important;box-shadow: 0 0 0 3px ' + second + ' !important;}'
- style += '.layui-form-checkbox[lay-skin=primary]:hover span {background-color: initial;}'
- style += '.layui-form-checked[lay-skin=primary] i {border-color: ' + color + '!important;background-color: ' + color + ';}'
- style += '.layui-form-checked,.layui-form-checked:hover {border-color: ' + color + '!important;}'
- style += '.layui-form-checked span,.layui-form-checked:hover span {background-color: ' + color + ';}'
- style += '.layui-form-checked i,.layui-form-checked:hover i {color: ' + color + ';}'
- style += '.layui-form-onswitch { border-color: ' + color + '; background-color: ' + color + ';}'
- style += '.layui-form-radio>i:hover, .layui-form-radioed>i {color: ' + color + ';}'
- style += '.layui-form-select dl dd.layui-this{color:'+color+'!important;}'
- style += '.layui-form-checkbox[lay-skin=primary]:hover i{border-color:'+color+'!important}'
- style += '.layui-form-danger:focus {border-color:#FF5722 !important}'
- style += '.layui-form-radio:hover *, .layui-form-radioed, .layui-form-radioed>i{color:' + color + ' !important}';
- var colorPane = $("#pear-admin-color");
- if(colorPane.length>0){
- colorPane.html(style);
- }else{
- $("head").append("<style id='pear-admin-color'>"+style+"</style>")
- }
- }
- return pearTheme;
- });
|