更新
This commit is contained in:
parent
4e31dbdf81
commit
d9e7ec858d
@ -1 +1 @@
|
||||
.col-mb-12.col-tb-8.col-tb-offset-2{margin-left:0;width:100%}.joe_config{display:flex}.joe_config *{margin:0;padding:0;box-sizing:border-box;outline:none;-webkit-tap-highlight-color:transparent}.joe_config li{list-style:none}.joe_config__aside{position:-webkit-sticky;position:sticky;top:15px;width:200px;background:#fff;padding:10px;box-shadow:0px 0px 20px -5px rgba(158,158,158,0.22);border-radius:8px}.joe_config__aside .logo{color:#303133;font-weight:500;font-size:24px;text-align:center;margin-bottom:10px;border-bottom:1px solid #ebeef5;padding-bottom:10px}.joe_config__aside .tabs{margin-bottom:10px}.joe_config__aside .tabs .item{border-radius:20px;text-align:center;height:40px;line-height:40px;color:#606266;cursor:pointer;transition:background 0.35s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.joe_config__aside .tabs .item:hover{background:#f2f6fc}.joe_config__aside .tabs .item.active{color:#409eff;font-weight:500}.joe_config__aside .backup input{width:170px;height:40px;line-height:40px;margin-bottom:10px;color:#fff;font-size:14px;border-radius:20px;transition:opacity 0.35s;border:none;cursor:pointer}.joe_config__aside .backup input:hover{opacity:0.85}.joe_config__aside .backup input:nth-child(1){background:#5cb85c}.joe_config__aside .backup input:nth-child(2){background:#f0ad4e}.joe_config__aside .backup input:nth-child(3){margin-bottom:0;background:#d9534f}.joe_config>form{position:relative;display:none;background:#fff;min-width:0;flex:1;margin-left:15px;box-shadow:0px 0px 20px -5px rgba(158,158,158,0.22);border-radius:8px}.joe_config>form .typecho-option{position:-webkit-sticky;position:sticky;bottom:0;display:flex;align-items:center;justify-content:center;margin:0;padding:15px;background:#fff;border-top:1px solid #ebebeb;border-radius:0 0 8px 8px}.joe_config>form .typecho-option button{width:170px;height:40px;background-color:#409eff;border-radius:20px}.joe_config>form .typecho-option button:hover{-webkit-animation:pulse 1s;animation:pulse 1s;box-shadow:0 0 0 20px rgba(255,255,255,0)}.joe_config>form .joe_content{display:none;padding:15px}.joe_config>form .joe_content li{border:1px solid #e9e9eb;padding:15px}.joe_config>form .joe_content li .typecho-label{display:block;border-left:4px solid #409eff;background:#ecf5ff;line-height:26px;margin-bottom:15px;padding:5px 15px;color:#409eff;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-radius:0 4px 4px 0}.joe_config>form .joe_content li select{min-width:200px;height:34px;line-height:34px;border:1px solid #e9e9eb;color:#666;border-radius:4px;padding-left:5px}.joe_config>form .joe_content li textarea,.joe_config>form .joe_content li input[type="text"]{width:100%;padding:10px;color:#666;border:1px solid #e9e9eb;-webkit-appearance:none}.joe_config>form .joe_content li .description{background:#f8f8f8;color:#999;padding:10px 15px;margin-top:15px;line-height:26px;border-radius:4px}.joe_config__notice{display:none;margin-left:15px;background:#fff;padding:15px;flex:1;box-shadow:0px 0px 20px -5px rgba(158,158,158,0.22);border-radius:8px;line-height:28px;color:#606266}.joe_config__notice ol{padding:0 40px}.joe_config__notice ol li{list-style:decimal}@-webkit-keyframes pulse{0%{box-shadow:0 0 0 0 #409eff}}@keyframes pulse{0%{box-shadow:0 0 0 0 #409eff}}@media (max-width: 768px){.joe_config{display:block}.joe_config__aside{width:100%;margin-bottom:15px}.joe_config__aside .tabs{display:flex;flex-wrap:wrap;border-bottom:1px solid #ebeef5;padding-bottom:10px}.joe_config__aside .tabs .item{width:33.33333333%;height:36px;line-height:36px;border-radius:18px}.joe_config__aside .backup{display:flex;align-items:center;justify-content:space-between}.joe_config__aside .backup input{width:auto;flex:1;margin-bottom:0;height:36px;line-height:36px;border-radius:18px}.joe_config__aside .backup input:nth-child(2){margin:0 10px}.joe_config>form{margin-left:0}.joe_config>form .typecho-option{padding:10px 0}.joe_config>form .typecho-option button{width:150px;height:38px;border-radius:19px}.joe_config__notice{margin-left:0}}
|
||||
.col-mb-12.col-tb-8.col-tb-offset-2{margin-left:0;width:100%}.joe_config{display:flex}.joe_config *{margin:0;padding:0;box-sizing:border-box;outline:none;-webkit-tap-highlight-color:transparent}.joe_config li{list-style:none}.joe_config__aside{position:-webkit-sticky;position:sticky;top:15px;width:200px;background:#fff;padding:10px;box-shadow:0px 0px 20px -5px rgba(158,158,158,0.22);border-radius:8px}.joe_config__aside .logo{color:#303133;font-weight:500;font-size:24px;text-align:center;margin-bottom:10px;border-bottom:1px solid #ebeef5;padding-bottom:10px}.joe_config__aside .tabs{margin-bottom:10px}.joe_config__aside .tabs .item{border-radius:20px;text-align:center;height:40px;line-height:40px;color:#606266;cursor:pointer;transition:background 0.35s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.joe_config__aside .tabs .item:hover{background:#f2f6fc}.joe_config__aside .tabs .item.active{color:#409eff;font-weight:500}.joe_config__aside .backup input{width:170px;height:40px;line-height:40px;margin-bottom:10px;color:#fff;font-size:14px;border-radius:20px;transition:opacity 0.35s;border:none;cursor:pointer}.joe_config__aside .backup input:hover{opacity:0.85}.joe_config__aside .backup input:nth-child(1){background:#5cb85c}.joe_config__aside .backup input:nth-child(2){background:#f0ad4e}.joe_config__aside .backup input:nth-child(3){margin-bottom:0;background:#d9534f}.joe_config>form{position:relative;display:none;background:#fff;min-width:0;flex:1;margin-left:15px;box-shadow:0px 0px 20px -5px rgba(158,158,158,0.22);border-radius:8px}.joe_config>form .typecho-option{position:-webkit-sticky;position:sticky;bottom:0;display:flex;align-items:center;justify-content:center;margin:0;padding:15px;background:#fff;border-top:1px solid #ebebeb;border-radius:0 0 8px 8px}.joe_config>form .typecho-option button{width:170px;height:40px;background-color:#409eff;border-radius:20px}.joe_config>form .typecho-option button:hover{-webkit-animation:pulse 1s;animation:pulse 1s;box-shadow:0 0 0 20px rgba(255,255,255,0)}.joe_config>form .joe_content{display:none;padding:15px}.joe_config>form .joe_content li{border:1px solid #e9e9eb;padding:15px}.joe_config>form .joe_content li .typecho-label{display:block;border-left:4px solid #409eff;background:#ecf5ff;line-height:26px;margin-bottom:15px;padding:5px 15px;color:#409eff;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-radius:0 4px 4px 0}.joe_config>form .joe_content li select{min-width:200px;height:34px;line-height:34px;border:1px solid #e9e9eb;color:#666;border-radius:4px;padding-left:5px}.joe_config>form .joe_content li .multiline{display:flex;align-items:center;color:#666}.joe_config>form .joe_content li .multiline input[type='checkbox']{margin-right:5px}.joe_config>form .joe_content li textarea,.joe_config>form .joe_content li input[type='text']{width:100%;padding:10px;color:#666;border:1px solid #e9e9eb;-webkit-appearance:none}.joe_config>form .joe_content li .description{background:#f8f8f8;color:#999;padding:10px 15px;margin-top:15px;line-height:26px;border-radius:4px}.joe_config__notice{display:none;margin-left:15px;background:#fff;padding:15px;flex:1;box-shadow:0px 0px 20px -5px rgba(158,158,158,0.22);border-radius:8px;line-height:28px;color:#606266}.joe_config__notice ol{padding:0 40px}.joe_config__notice ol li{list-style:decimal}@-webkit-keyframes pulse{0%{box-shadow:0 0 0 0 #409eff}}@keyframes pulse{0%{box-shadow:0 0 0 0 #409eff}}@media (max-width: 768px){.joe_config{display:block}.joe_config__aside{width:100%;margin-bottom:15px}.joe_config__aside .tabs{display:flex;flex-wrap:wrap;border-bottom:1px solid #ebeef5;padding-bottom:10px}.joe_config__aside .tabs .item{width:33.33333333%;height:36px;line-height:36px;border-radius:18px}.joe_config__aside .backup{display:flex;align-items:center;justify-content:space-between}.joe_config__aside .backup input{width:auto;flex:1;margin-bottom:0;height:36px;line-height:36px;border-radius:18px}.joe_config__aside .backup input:nth-child(2){margin:0 10px}.joe_config>form{margin-left:0}.joe_config>form .typecho-option{padding:10px 0}.joe_config>form .typecho-option button{width:150px;height:38px;border-radius:19px}.joe_config__notice{margin-left:0}}
|
||||
|
@ -1,242 +1,250 @@
|
||||
.col-mb-12.col-tb-8.col-tb-offset-2 {
|
||||
margin-left: 0;
|
||||
width: 100%;
|
||||
margin-left: 0;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.joe_config {
|
||||
display: flex;
|
||||
display: flex;
|
||||
|
||||
* {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
outline: none;
|
||||
-webkit-tap-highlight-color: transparent;
|
||||
}
|
||||
|
||||
li {
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
&__aside {
|
||||
position: sticky;
|
||||
top: 15px;
|
||||
width: 200px;
|
||||
background: #fff;
|
||||
padding: 10px;
|
||||
box-shadow: 0px 0px 20px -5px rgba(158, 158, 158, 0.22);
|
||||
border-radius: 8px;
|
||||
.logo {
|
||||
color: #303133;
|
||||
font-weight: 500;
|
||||
font-size: 24px;
|
||||
text-align: center;
|
||||
margin-bottom: 10px;
|
||||
border-bottom: 1px solid #ebeef5;
|
||||
padding-bottom: 10px;
|
||||
* {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
outline: none;
|
||||
-webkit-tap-highlight-color: transparent;
|
||||
}
|
||||
.tabs {
|
||||
margin-bottom: 10px;
|
||||
.item {
|
||||
border-radius: 20px;
|
||||
text-align: center;
|
||||
height: 40px;
|
||||
line-height: 40px;
|
||||
color: #606266;
|
||||
cursor: pointer;
|
||||
transition: background 0.35s;
|
||||
user-select: none;
|
||||
&:hover {
|
||||
background: #f2f6fc;
|
||||
}
|
||||
&.active {
|
||||
color: #409eff;
|
||||
font-weight: 500;
|
||||
}
|
||||
}
|
||||
}
|
||||
.backup {
|
||||
input {
|
||||
width: 170px;
|
||||
height: 40px;
|
||||
line-height: 40px;
|
||||
margin-bottom: 10px;
|
||||
color: #fff;
|
||||
font-size: 14px;
|
||||
border-radius: 20px;
|
||||
transition: opacity 0.35s;
|
||||
border: none;
|
||||
cursor: pointer;
|
||||
&:hover {
|
||||
opacity: 0.85;
|
||||
}
|
||||
&:nth-child(1) {
|
||||
background: #5cb85c;
|
||||
}
|
||||
&:nth-child(2) {
|
||||
background: #f0ad4e;
|
||||
}
|
||||
&:nth-child(3) {
|
||||
margin-bottom: 0;
|
||||
background: #d9534f;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
> form {
|
||||
position: relative;
|
||||
display: none;
|
||||
background: #fff;
|
||||
min-width: 0;
|
||||
flex: 1;
|
||||
margin-left: 15px;
|
||||
box-shadow: 0px 0px 20px -5px rgba(158, 158, 158, 0.22);
|
||||
border-radius: 8px;
|
||||
.typecho-option {
|
||||
position: sticky;
|
||||
bottom: 0;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
margin: 0;
|
||||
padding: 15px;
|
||||
background: #fff;
|
||||
border-top: 1px solid #ebebeb;
|
||||
border-radius: 0 0 8px 8px;
|
||||
button {
|
||||
width: 170px;
|
||||
height: 40px;
|
||||
background-color: #409eff;
|
||||
border-radius: 20px;
|
||||
&:hover {
|
||||
animation: pulse 1s;
|
||||
box-shadow: 0 0 0 20px rgba(255, 255, 255, 0);
|
||||
}
|
||||
}
|
||||
li {
|
||||
list-style: none;
|
||||
}
|
||||
.joe_content {
|
||||
display: none;
|
||||
padding: 15px;
|
||||
li {
|
||||
border: 1px solid #e9e9eb;
|
||||
padding: 15px;
|
||||
.typecho-label {
|
||||
display: block;
|
||||
border-left: 4px solid #409eff;
|
||||
background: #ecf5ff;
|
||||
line-height: 26px;
|
||||
margin-bottom: 15px;
|
||||
padding: 5px 15px;
|
||||
color: #409eff;
|
||||
user-select: none;
|
||||
border-radius: 0 4px 4px 0;
|
||||
}
|
||||
select {
|
||||
min-width: 200px;
|
||||
height: 34px;
|
||||
line-height: 34px;
|
||||
border: 1px solid #e9e9eb;
|
||||
color: #666;
|
||||
border-radius: 4px;
|
||||
padding-left: 5px;
|
||||
}
|
||||
textarea,
|
||||
input[type="text"] {
|
||||
width: 100%;
|
||||
padding: 10px;
|
||||
color: #666;
|
||||
border: 1px solid #e9e9eb;
|
||||
-webkit-appearance: none;
|
||||
}
|
||||
.description {
|
||||
background: #f8f8f8;
|
||||
color: #999;
|
||||
padding: 10px 15px;
|
||||
margin-top: 15px;
|
||||
line-height: 26px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&__notice {
|
||||
display: none;
|
||||
margin-left: 15px;
|
||||
background: #fff;
|
||||
padding: 15px;
|
||||
flex: 1;
|
||||
box-shadow: 0px 0px 20px -5px rgba(158, 158, 158, 0.22);
|
||||
border-radius: 8px;
|
||||
line-height: 28px;
|
||||
color: #606266;
|
||||
ol {
|
||||
padding: 0 40px;
|
||||
li {
|
||||
list-style: decimal;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes pulse {
|
||||
0% {
|
||||
box-shadow: 0 0 0 0 #409eff;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 768px) {
|
||||
.joe_config {
|
||||
display: block;
|
||||
|
||||
&__aside {
|
||||
width: 100%;
|
||||
margin-bottom: 15px;
|
||||
.tabs {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
border-bottom: 1px solid #ebeef5;
|
||||
padding-bottom: 10px;
|
||||
.item {
|
||||
width: 33.33333333%;
|
||||
height: 36px;
|
||||
line-height: 36px;
|
||||
border-radius: 18px;
|
||||
position: sticky;
|
||||
top: 15px;
|
||||
width: 200px;
|
||||
background: #fff;
|
||||
padding: 10px;
|
||||
box-shadow: 0px 0px 20px -5px rgba(158, 158, 158, 0.22);
|
||||
border-radius: 8px;
|
||||
.logo {
|
||||
color: #303133;
|
||||
font-weight: 500;
|
||||
font-size: 24px;
|
||||
text-align: center;
|
||||
margin-bottom: 10px;
|
||||
border-bottom: 1px solid #ebeef5;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
}
|
||||
.backup {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
input {
|
||||
width: auto;
|
||||
flex: 1;
|
||||
margin-bottom: 0;
|
||||
height: 36px;
|
||||
line-height: 36px;
|
||||
border-radius: 18px;
|
||||
&:nth-child(2) {
|
||||
margin: 0 10px;
|
||||
}
|
||||
.tabs {
|
||||
margin-bottom: 10px;
|
||||
.item {
|
||||
border-radius: 20px;
|
||||
text-align: center;
|
||||
height: 40px;
|
||||
line-height: 40px;
|
||||
color: #606266;
|
||||
cursor: pointer;
|
||||
transition: background 0.35s;
|
||||
user-select: none;
|
||||
&:hover {
|
||||
background: #f2f6fc;
|
||||
}
|
||||
&.active {
|
||||
color: #409eff;
|
||||
font-weight: 500;
|
||||
}
|
||||
}
|
||||
}
|
||||
.backup {
|
||||
input {
|
||||
width: 170px;
|
||||
height: 40px;
|
||||
line-height: 40px;
|
||||
margin-bottom: 10px;
|
||||
color: #fff;
|
||||
font-size: 14px;
|
||||
border-radius: 20px;
|
||||
transition: opacity 0.35s;
|
||||
border: none;
|
||||
cursor: pointer;
|
||||
&:hover {
|
||||
opacity: 0.85;
|
||||
}
|
||||
&:nth-child(1) {
|
||||
background: #5cb85c;
|
||||
}
|
||||
&:nth-child(2) {
|
||||
background: #f0ad4e;
|
||||
}
|
||||
&:nth-child(3) {
|
||||
margin-bottom: 0;
|
||||
background: #d9534f;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
> form {
|
||||
margin-left: 0;
|
||||
.typecho-option {
|
||||
padding: 10px 0;
|
||||
button {
|
||||
width: 150px;
|
||||
height: 38px;
|
||||
border-radius: 19px;
|
||||
position: relative;
|
||||
display: none;
|
||||
background: #fff;
|
||||
min-width: 0;
|
||||
flex: 1;
|
||||
margin-left: 15px;
|
||||
box-shadow: 0px 0px 20px -5px rgba(158, 158, 158, 0.22);
|
||||
border-radius: 8px;
|
||||
.typecho-option {
|
||||
position: sticky;
|
||||
bottom: 0;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
margin: 0;
|
||||
padding: 15px;
|
||||
background: #fff;
|
||||
border-top: 1px solid #ebebeb;
|
||||
border-radius: 0 0 8px 8px;
|
||||
button {
|
||||
width: 170px;
|
||||
height: 40px;
|
||||
background-color: #409eff;
|
||||
border-radius: 20px;
|
||||
&:hover {
|
||||
animation: pulse 1s;
|
||||
box-shadow: 0 0 0 20px rgba(255, 255, 255, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
.joe_content {
|
||||
display: none;
|
||||
padding: 15px;
|
||||
li {
|
||||
border: 1px solid #e9e9eb;
|
||||
padding: 15px;
|
||||
.typecho-label {
|
||||
display: block;
|
||||
border-left: 4px solid #409eff;
|
||||
background: #ecf5ff;
|
||||
line-height: 26px;
|
||||
margin-bottom: 15px;
|
||||
padding: 5px 15px;
|
||||
color: #409eff;
|
||||
user-select: none;
|
||||
border-radius: 0 4px 4px 0;
|
||||
}
|
||||
select {
|
||||
min-width: 200px;
|
||||
height: 34px;
|
||||
line-height: 34px;
|
||||
border: 1px solid #e9e9eb;
|
||||
color: #666;
|
||||
border-radius: 4px;
|
||||
padding-left: 5px;
|
||||
}
|
||||
.multiline {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
color: #666;
|
||||
input[type='checkbox'] {
|
||||
margin-right: 5px;
|
||||
}
|
||||
}
|
||||
textarea,
|
||||
input[type='text'] {
|
||||
width: 100%;
|
||||
padding: 10px;
|
||||
color: #666;
|
||||
border: 1px solid #e9e9eb;
|
||||
-webkit-appearance: none;
|
||||
}
|
||||
.description {
|
||||
background: #f8f8f8;
|
||||
color: #999;
|
||||
padding: 10px 15px;
|
||||
margin-top: 15px;
|
||||
line-height: 26px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&__notice {
|
||||
margin-left: 0;
|
||||
display: none;
|
||||
margin-left: 15px;
|
||||
background: #fff;
|
||||
padding: 15px;
|
||||
flex: 1;
|
||||
box-shadow: 0px 0px 20px -5px rgba(158, 158, 158, 0.22);
|
||||
border-radius: 8px;
|
||||
line-height: 28px;
|
||||
color: #606266;
|
||||
ol {
|
||||
padding: 0 40px;
|
||||
li {
|
||||
list-style: decimal;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes pulse {
|
||||
0% {
|
||||
box-shadow: 0 0 0 0 #409eff;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 768px) {
|
||||
.joe_config {
|
||||
display: block;
|
||||
|
||||
&__aside {
|
||||
width: 100%;
|
||||
margin-bottom: 15px;
|
||||
.tabs {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
border-bottom: 1px solid #ebeef5;
|
||||
padding-bottom: 10px;
|
||||
.item {
|
||||
width: 33.33333333%;
|
||||
height: 36px;
|
||||
line-height: 36px;
|
||||
border-radius: 18px;
|
||||
}
|
||||
}
|
||||
.backup {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
input {
|
||||
width: auto;
|
||||
flex: 1;
|
||||
margin-bottom: 0;
|
||||
height: 36px;
|
||||
line-height: 36px;
|
||||
border-radius: 18px;
|
||||
&:nth-child(2) {
|
||||
margin: 0 10px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
> form {
|
||||
margin-left: 0;
|
||||
.typecho-option {
|
||||
padding: 10px 0;
|
||||
button {
|
||||
width: 150px;
|
||||
height: 38px;
|
||||
border-radius: 19px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&__notice {
|
||||
margin-left: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
File diff suppressed because one or more lines are too long
@ -490,6 +490,19 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
&.weather {
|
||||
background: var(--background);
|
||||
.joe_aside__item-contain {
|
||||
min-height: 300px;
|
||||
}
|
||||
}
|
||||
&.hot {
|
||||
background: var(--background);
|
||||
.empty {
|
||||
text-align: center;
|
||||
color: var(--routine);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
BIN
assets/img/lazyload.jpg
Normal file
BIN
assets/img/lazyload.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 256 KiB |
@ -26,9 +26,8 @@ window.Joe = function () {
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/* Timelife */
|
||||
{
|
||||
if ($('.joe_aside__item.timelife').length !== 0) {
|
||||
let timelife = [
|
||||
{ title: '今日已经过去', endTitle: '小时', num: 0, percent: '0%' },
|
||||
{ title: '这周已经过去', endTitle: '天', num: 0, percent: '0%' },
|
||||
@ -83,7 +82,15 @@ window.Joe = function () {
|
||||
</div>
|
||||
`;
|
||||
});
|
||||
$('.joe_aside__item-contain').html(htmlStr);
|
||||
$('.joe_aside__item.timelife .joe_aside__item-contain').html(htmlStr);
|
||||
}
|
||||
|
||||
/* Weather */
|
||||
if ($('.joe_aside__item.weather').length !== 0) {
|
||||
const key = $('.joe_aside__item.weather').attr('data-key');
|
||||
const style = $('.joe_aside__item.weather').attr('data-style');
|
||||
const aqiColor = { 1: 'FFFFFF', 2: '4A4A4A', 3: 'FFFFFF' };
|
||||
window.WIDGET = { CONFIG: { layout: 2, width: '220', height: '270', background: style, dataColor: aqiColor[style], language: 'zh', key: key } };
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -7,6 +7,7 @@ function _getVersion()
|
||||
};
|
||||
|
||||
timerStart();
|
||||
|
||||
function timerStart()
|
||||
{
|
||||
global $timeStart;
|
||||
@ -14,6 +15,7 @@ function timerStart()
|
||||
$timeStart = $mTime[1] + $mTime[0];
|
||||
return true;
|
||||
}
|
||||
|
||||
function timerStop($precision = 3)
|
||||
{
|
||||
global $timeStart, $timeEnd;
|
||||
@ -42,6 +44,29 @@ function _getAsideAuthorMotto()
|
||||
echo $JMottoRandom[array_rand($JMottoRandom, 1)];
|
||||
}
|
||||
|
||||
function _getThumbnail($item)
|
||||
{
|
||||
$randomThumb = 'https://cdn.jsdelivr.net/npm/typecho_joe_theme@4.3.5/assets/img/random/' . rand(1, 25) . '.webp';
|
||||
$custom_thumbnail = Helper::options()->JThumbnail;
|
||||
if ($custom_thumbnail) {
|
||||
$custom_thumbnail_arr = explode("\r\n", $custom_thumbnail);
|
||||
$randomThumb = $custom_thumbnail_arr[array_rand($custom_thumbnail_arr, 1)] . "?key=" . mt_rand(0, 1000000);
|
||||
}
|
||||
$pattern = '/\<img.*?src\=\"(.*?)\"[^>]*>/i';
|
||||
$patternMD = '/\!\[.*?\]\((http(s)?:\/\/.*?(jpg|jpeg|gif|png|webp))/i';
|
||||
$patternMDfoot = '/\[.*?\]:\s*(http(s)?:\/\/.*?(jpg|jpeg|gif|png|webp))/i';
|
||||
if ($item->fields->thumb) {
|
||||
$randomThumb = $item->fields->thumb;
|
||||
} elseif (preg_match_all($pattern, $item->content, $thumbUrl)) {
|
||||
$randomThumb = $thumbUrl[1][0];
|
||||
} elseif (preg_match_all($patternMD, $item->content, $thumbUrl)) {
|
||||
$randomThumb = $thumbUrl[1][0];
|
||||
} elseif (preg_match_all($patternMDfoot, $item->content, $thumbUrl)) {
|
||||
$randomThumb = $thumbUrl[1][0];
|
||||
}
|
||||
echo $randomThumb;
|
||||
}
|
||||
|
||||
function _getAsideAuthorNav()
|
||||
{
|
||||
if (Helper::options()->JAside_Author_Nav !== "off") {
|
||||
@ -55,9 +80,9 @@ function _getAsideAuthorNav()
|
||||
$result = $db->fetchAll(
|
||||
$db->select()
|
||||
->from('table.contents')
|
||||
->where('status = ?', 'publish')
|
||||
->where('type = ?', 'post')
|
||||
->where('password IS NULL')
|
||||
->where('table.contents.status = ?', 'publish')
|
||||
->where('table.contents.type = ?', 'post')
|
||||
->where("table.contents.password IS NULL OR table.contents.password = ''")
|
||||
->limit(Helper::options()->JAside_Author_Nav)
|
||||
->order($order_by)
|
||||
);
|
||||
@ -92,4 +117,35 @@ function themeFields($layout)
|
||||
注意:只有在外观设置侧边栏开启状态下生效'
|
||||
);
|
||||
$layout->addItem($aside);
|
||||
|
||||
$thumb = new Typecho_Widget_Helper_Form_Element_Textarea(
|
||||
'thumb',
|
||||
NULL,
|
||||
NULL,
|
||||
'自定义文章缩略图',
|
||||
'填写时:将会显示填写的文章缩略图 <br>
|
||||
不填写时:<br>
|
||||
1、若文章有图片则取文章内图片 <br>
|
||||
2、若文章无图片,并且外观设置里未填写·自定义缩略图·选项,则取模板自带图片 <br>
|
||||
3、若文章无图片,并且外观设置里填写了·自定义缩略图·选项,则取自定义缩略图图片'
|
||||
);
|
||||
$layout->addItem($thumb);
|
||||
}
|
||||
|
||||
class Widget_Contents_Hot extends Widget_Abstract_Contents
|
||||
{
|
||||
public function execute()
|
||||
{
|
||||
$this->parameter->setDefault(array('pageSize' => 10));
|
||||
$this->db->fetchAll(
|
||||
$this->select()->from('table.contents')
|
||||
->where("table.contents.password IS NULL OR table.contents.password = ''")
|
||||
->where('table.contents.status = ?', 'publish')
|
||||
->where('table.contents.created <= ?', time())
|
||||
->where('table.contents.type = ?', 'post')
|
||||
->limit($this->parameter->pageSize)
|
||||
->order('table.contents.views', Typecho_Db::SORT_DESC),
|
||||
array($this, 'push')
|
||||
);
|
||||
}
|
||||
}
|
||||
|
@ -80,6 +80,8 @@ function themeConfig($form)
|
||||
array(
|
||||
'author' => '作者栏',
|
||||
'timelife' => '计时栏',
|
||||
'weather' => '天气栏(需先在下方填写KEY值)',
|
||||
'hot' => '热门文章栏'
|
||||
),
|
||||
null,
|
||||
'选择首页需要显示的侧边栏栏目',
|
||||
@ -141,4 +143,76 @@ function themeConfig($form)
|
||||
);
|
||||
$JAside_Author_Nav->setAttribute('class', 'joe_content joe_aside');
|
||||
$form->addInput($JAside_Author_Nav->multiMode());
|
||||
|
||||
$JAside_Weather_Key = new Typecho_Widget_Helper_Form_Element_Textarea(
|
||||
'JAside_Weather_Key',
|
||||
NULL,
|
||||
NULL,
|
||||
'天气栏 —— 天气KEY值',
|
||||
'介绍:用于初始化天气栏 <br/>
|
||||
注意:填写时请填写正确的KEY值!<br />
|
||||
其他:免费申请地址:<a href="//cj.weather.com.cn">cj.weather.com.cn</a>'
|
||||
);
|
||||
$JAside_Weather_Key->setAttribute('class', 'joe_content joe_aside');
|
||||
$form->addInput($JAside_Weather_Key);
|
||||
|
||||
$JAside_Weather_Style = new Typecho_Widget_Helper_Form_Element_Select(
|
||||
'JAside_Weather_Style',
|
||||
array(
|
||||
'1' => '自动(默认)',
|
||||
'2' => '浅色',
|
||||
'3' => '深色'
|
||||
),
|
||||
'1',
|
||||
'天气栏 —— 天气风格样式',
|
||||
'介绍:选择一款您所喜爱的天气风格 <br />
|
||||
注意:需要先填写天气的KEY值'
|
||||
);
|
||||
$JAside_Weather_Style->setAttribute('class', 'joe_content joe_aside');
|
||||
$form->addInput($JAside_Weather_Style->multiMode());
|
||||
|
||||
$JAside_Hot_Num = new Typecho_Widget_Helper_Form_Element_Select(
|
||||
'JAside_Hot_Num',
|
||||
array(
|
||||
'3' => '显示3条(默认)',
|
||||
'4' => '显示4条',
|
||||
'5' => '显示5条',
|
||||
'6' => '显示6条',
|
||||
'7' => '显示7条',
|
||||
'8' => '显示8条',
|
||||
'9' => '显示9条',
|
||||
'10' => '显示10条',
|
||||
),
|
||||
'3',
|
||||
'热门文章栏 —— 文章数',
|
||||
'介绍:用于控制热门文章栏目的数量'
|
||||
);
|
||||
$JAside_Hot_Num->setAttribute('class', 'joe_content joe_aside');
|
||||
$form->addInput($JAside_Hot_Num->multiMode());
|
||||
|
||||
$JThumbnail = new Typecho_Widget_Helper_Form_Element_Textarea(
|
||||
'JThumbnail',
|
||||
NULL,
|
||||
NULL,
|
||||
'自定义缩略图(非必填)',
|
||||
'介绍:用于修改主题默认缩略图 <br/>
|
||||
格式:图片地址,一行一个 <br />
|
||||
注意:不填写时,则使用主题内置的默认缩略图
|
||||
'
|
||||
);
|
||||
$JThumbnail->setAttribute('class', 'joe_content joe_image');
|
||||
$form->addInput($JThumbnail);
|
||||
|
||||
$JLazyload = new Typecho_Widget_Helper_Form_Element_Textarea(
|
||||
'JLazyload',
|
||||
NULL,
|
||||
"https://cdn.jsdelivr.net/gh/HaoOuBa/Joe@master/assets/img/lazyload.jpg",
|
||||
'自定义缩略图(非必填)',
|
||||
'介绍:用于修改主题默认缩略图 <br/>
|
||||
格式:图片地址,一行一个 <br />
|
||||
注意:不填写时,则使用主题内置的默认缩略图
|
||||
'
|
||||
);
|
||||
$JLazyload->setAttribute('class', 'joe_content joe_image');
|
||||
$form->addInput($JLazyload);
|
||||
} ?>
|
@ -29,16 +29,64 @@
|
||||
|
||||
<?php if (in_array('timelife', $this->options->JAside)) : ?>
|
||||
<section class="joe_aside__item timelife">
|
||||
<h3 class="joe_aside__item-title">
|
||||
<div class="joe_aside__item-title">
|
||||
<svg class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="18" height="18">
|
||||
<path d="M864.801 895.471h-33.56v-96.859c0-126.081-73.017-235.093-179.062-287.102 106.046-52.01 179.062-161.022 179.062-287.102v-96.859h33.56c17.301 0 31.325-14.327 31.325-32 0-17.673-14.024-32-31.325-32H159.018c-17.3 0-31.325 14.327-31.325 32 0 17.673 14.025 32 31.325 32h33.02v96.859c0 126.08 73.016 235.092 179.061 287.102-106.046 52.009-179.062 161.02-179.062 287.101v96.859h-33.02c-17.3 0-31.325 14.326-31.325 32s14.025 32 31.325 32H864.8c17.301 0 31.325-14.326 31.325-32s-14.023-31.999-31.324-31.999zM256.05 222.427v-94.878h513.046v94.878c0 141.674-114.85 256.522-256.523 256.522-141.674 0-256.523-114.848-256.523-256.522z m513.046 673.044H256.05v-94.879c0-141.674 114.849-256.521 256.523-256.521 141.673 0 256.523 114.848 256.523 256.521v94.879z" p-id="29837"></path>
|
||||
<path d="M544.141 384c0-17.69-14.341-32.031-32.031-32.031-71.694 0-127.854-56.161-127.854-127.855 0-17.69-14.341-32.032-32.031-32.032s-32.032 14.341-32.032 32.032c0 107.617 84.3 191.918 191.917 191.918 17.69 0 32.031-14.342 32.031-32.032z" p-id="29838"></path>
|
||||
</svg>
|
||||
<span class="text">人生倒计时</span>
|
||||
<span class="line"></span>
|
||||
</h3>
|
||||
</div>
|
||||
<div class="joe_aside__item-contain"></div>
|
||||
</section>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if (in_array('hot', $this->options->JAside)) : ?>
|
||||
<div class="joe_aside__item hot">
|
||||
<div class="joe_aside__item-title">
|
||||
<svg class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="18" height="18">
|
||||
<path d="M512 938.666667A426.666667 426.666667 0 0 1 85.333333 512a421.12 421.12 0 0 1 131.2-306.133333 58.88 58.88 0 0 1 42.666667-16.64c33.28 1.066667 58.026667 28.16 84.266667 56.96 7.893333 8.533333 19.626667 21.333333 28.373333 29.013333a542.933333 542.933333 0 0 0 24.533333-61.866667c18.133333-52.266667 35.413333-101.76 75.306667-121.6C526.72 64 583.253333 129.706667 654.933333 213.333333c16.213333 18.773333 38.613333 44.8 53.546667 59.52 1.706667-4.48 3.2-8.96 4.48-12.373333 8.533333-24.32 18.986667-54.613333 51.2-61.653333a57.813333 57.813333 0 0 1 55.68 20.053333A426.666667 426.666667 0 0 1 512 938.666667zM260.693333 282.453333A336.64 336.64 0 0 0 170.666667 512a341.333333 341.333333 0 1 0 614.826666-203.733333 90.24 90.24 0 0 1-42.666666 50.56 68.266667 68.266667 0 0 1-53.546667 1.706666c-25.6-9.173333-51.626667-38.4-99.2-93.226666a826.666667 826.666667 0 0 0-87.253333-91.733334 507.733333 507.733333 0 0 0-26.24 64c-18.133333 52.266667-35.413333 101.76-75.946667 119.253334-48.853333 21.333333-88.32-21.333333-120.106667-56.96-5.76-4.693333-13.226667-13.013333-19.84-19.413334z" p-id="14764"></path>
|
||||
<path d="M512 810.666667a298.666667 298.666667 0 0 1-298.666667-298.666667 42.666667 42.666667 0 0 1 85.333334 0 213.333333 213.333333 0 0 0 213.333333 213.333333 42.666667 42.666667 0 0 1 0 85.333334z" p-id="14765"></path>
|
||||
</svg>
|
||||
<span class="text">热门文章</span>
|
||||
<span class="line"></span>
|
||||
</div>
|
||||
<?php $this->widget('Widget_Contents_Hot', 'pageSize=' . $this->options->JAside_Hot_Num)->to($item); ?>
|
||||
<ol class="joe_aside__item-contain">
|
||||
<?php if ($item->have()) : ?>
|
||||
<?php while ($item->next()) : ?>
|
||||
<li class="item">
|
||||
<a class="link" href="<?php $item->permalink() ?>" title="<?php $item->title() ?>">
|
||||
<i class="sort"><?php ?></i>
|
||||
<img class="image lazyload" data-original="<?php _getThumbnail($item); ?>" alt="<?php $item->title() ?>" />
|
||||
<div class="describe">
|
||||
<h6><?php $item->title() ?></h6>
|
||||
<span> 阅读 - <?php $item->date('m/d'); ?></span>
|
||||
</div>
|
||||
</a>
|
||||
</li>
|
||||
<?php endwhile; ?>
|
||||
<?php else : ?>
|
||||
<li class="empty">这个博主很懒!</li>
|
||||
<?php endif; ?>
|
||||
</ol>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if (in_array('weather', $this->options->JAside) && $this->options->JAside_Weather_Key) : ?>
|
||||
<div class="joe_aside__item weather" data-key="<?php $this->options->JAside_Weather_Key() ?>" data-style="<?php $this->options->JAside_Weather_Style() ?>">
|
||||
<div class="joe_aside__item-title">
|
||||
<svg class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="18" height="18">
|
||||
<path d="M773.12 757.76h-79.872c-15.36 0-29.696-15.36-29.696-29.696s15.36-29.696 29.696-29.696h79.872c100.352 0 180.224-79.872 180.224-180.224S873.472 337.92 773.12 337.92c-25.6 0-50.176 5.12-74.752 15.36-10.24 5.12-20.48 5.12-25.6 0-10.24-5.12-15.36-15.36-15.36-20.48-15.36-100.352-100.352-175.104-200.704-175.104C346.112 155.648 256 245.76 250.88 356.352c0 15.36-10.24 29.696-29.696 29.696-79.872 5.12-145.408 74.752-145.408 160.768 0 90.112 70.656 160.768 160.768 160.768h75.776c15.36 0 29.696 15.36 29.696 29.696s-15.36 30.72-30.72 30.72h-79.872C110.592 757.76 10.24 662.528 10.24 541.696c0-105.472 75.776-195.584 175.104-216.064 15.36-130.048 130.048-235.52 266.24-235.52 120.832 0 225.28 79.872 256 195.584 20.48-5.12 45.056-10.24 65.536-10.24C908.288 276.48 1013.76 387.072 1013.76 517.12S903.168 757.76 773.12 757.76z" fill="" p-id="13873"></path>
|
||||
<path d="M437.248 933.888c-10.24 0-15.36-5.12-20.48-10.24-10.24-10.24-10.24-29.696 0-45.056l79.872-79.872h-60.416c-10.24 0-25.6-5.12-29.696-20.48-5.12-10.24 0-24.576 5.12-34.816l130.048-130.048c10.24-10.24 29.696-10.24 45.056 0 10.24 10.24 10.24 29.696 0 45.056L512 742.4h55.296c10.24 0 24.576 5.12 29.696 20.48 5.12 10.24 0 24.576-5.12 34.816L461.824 928.768c-10.24 5.12-20.48 5.12-24.576 5.12z" fill="" p-id="13874"></path>
|
||||
</svg>
|
||||
<span class="text">今日天气</span>
|
||||
<span class="line"></span>
|
||||
</div>
|
||||
<div class="joe_aside__item-contain">
|
||||
<div id="weather-v2-plugin-standard"></div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
</aside>
|
||||
<?php endif; ?>
|
@ -9,6 +9,8 @@
|
||||
|
||||
<link rel="stylesheet" href="<?php $this->options->themeUrl('assets/css/joe.normalize.css'); ?>">
|
||||
<link rel="stylesheet" href="<?php $this->options->themeUrl('assets/css/joe.global.css'); ?>">
|
||||
<link rel="stylesheet" href="https://apip.weatherdt.com/standard/static/css/weather-standard.css">
|
||||
|
||||
<script src="https://cdn.jsdelivr.net/npm/jquery@3.5.1/dist/jquery.min.js"></script>
|
||||
<script src="<?php $this->options->themeUrl('assets/js/joe.global.js'); ?>"></script>
|
||||
<script async src="https://apip.weatherdt.com/standard/static/js/weather-standard.js?v=2.0"></script>
|
Loading…
Reference in New Issue
Block a user