更新网站架构
@@ -0,0 +1,3 @@
|
||||
.tns-outer{padding:0 !important}.tns-outer [hidden]{display:none !important}.tns-outer [aria-controls],.tns-outer [data-action]{cursor:pointer}.tns-slider{-webkit-transition:all 0s;-moz-transition:all 0s;transition:all 0s}.tns-slider>.tns-item{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.tns-horizontal.tns-subpixel{white-space:nowrap}.tns-horizontal.tns-subpixel>.tns-item{display:inline-block;vertical-align:top;white-space:normal}.tns-horizontal.tns-no-subpixel:after{content:'';display:table;clear:both}.tns-horizontal.tns-no-subpixel>.tns-item{float:left}.tns-horizontal.tns-carousel.tns-no-subpixel>.tns-item{margin-right:-100%}.tns-no-calc{position:relative;left:0}.tns-gallery{position:relative;left:0;min-height:1px}.tns-gallery>.tns-item{position:absolute;left:-100%;-webkit-transition:transform 0s, opacity 0s;-moz-transition:transform 0s, opacity 0s;transition:transform 0s, opacity 0s}.tns-gallery>.tns-slide-active{position:relative;left:auto !important}.tns-gallery>.tns-moving{-webkit-transition:all 0.25s;-moz-transition:all 0.25s;transition:all 0.25s}.tns-autowidth{display:inline-block}.tns-lazy-img{-webkit-transition:opacity 0.6s;-moz-transition:opacity 0.6s;transition:opacity 0.6s;opacity:0.6}.tns-lazy-img.tns-complete{opacity:1}.tns-ah{-webkit-transition:height 0s;-moz-transition:height 0s;transition:height 0s}.tns-ovh{overflow:hidden}.tns-visually-hidden{position:absolute;left:-10000em}.tns-transparent{opacity:0;visibility:hidden}.tns-fadeIn{opacity:1;filter:alpha(opacity=100);z-index:0}.tns-normal,.tns-fadeOut{opacity:0;filter:alpha(opacity=0);z-index:-1}.tns-vpfix{white-space:nowrap}.tns-vpfix>div,.tns-vpfix>li{display:inline-block}.tns-t-subp2{margin:0 auto;width:310px;position:relative;height:10px;overflow:hidden}.tns-t-ct{width:2333.3333333%;width:-webkit-calc(100% * 70 / 3);width:-moz-calc(100% * 70 / 3);width:calc(100% * 70 / 3);position:absolute;right:0}.tns-t-ct:after{content:'';display:table;clear:both}.tns-t-ct>div{width:1.4285714%;width:-webkit-calc(100% / 70);width:-moz-calc(100% / 70);width:calc(100% / 70);height:10px;float:left}
|
||||
|
||||
/*# sourceMappingURL=sourcemaps/tiny-slider.css.map */
|
||||
|
After Width: | Height: | Size: 596 KiB |
|
After Width: | Height: | Size: 43 KiB |
|
After Width: | Height: | Size: 26 KiB |
@@ -0,0 +1 @@
|
||||
<svg fill="none" height="44" viewBox="0 0 45 44" width="45" xmlns="http://www.w3.org/2000/svg"><g fill="#0067f4"><path d="m28.9548 22.4531v-.8684c0-6.4427-2.106-12.74067-6.0912-18.20787-.2052-.27872-.5292-.44488-.8748-.44488s-.6696.16616-.8748.44488c-3.9852 5.4672-6.0912 11.76517-6.0912 18.20787v.8684c-4.9356 2.7068-5.65384 9.0423-5.68084 9.3264-.0324.3001.0702.6003.27.8254.2052.2251.49684.3538.79924.3538h23.139c.3078 0 .5994-.1287.7992-.3538.2052-.2251.3024-.5253.27-.8254-.0162-.2841-.729-6.6196-5.6646-9.3264zm-13.932 2.5835v5.7781h-3.3102c.3618-1.5008 1.2474-4.1004 3.3102-5.7781zm2.16-3.4519c0-5.4993 1.6578-10.8915 4.806-15.68331 3.1482 4.79181 4.806 10.18401 4.806 15.68331v9.23h-9.612zm11.772 9.23v-5.7781c2.052 1.6777 2.9484 4.2773 3.3102 5.7781z"/><path d="m23.112 15.0294h-2.7378c-.594 0-1.08.4824-1.08 1.072s.486 1.072 1.08 1.072h2.7378c.594 0 1.08-.4824 1.08-1.072s-.4806-1.072-1.08-1.072z"/><path d="m18.2088 35.3975c-.594 0-1.08.4824-1.08 1.072v6.0943c0 .5896.486 1.072 1.08 1.072s1.08-.4824 1.08-1.072v-6.0943c0-.5896-.486-1.072-1.08-1.072z"/><path d="m21.9888 35.3975c-.594 0-1.08.4824-1.08 1.072v6.0943c0 .5896.486 1.072 1.08 1.072s1.08-.4824 1.08-1.072v-6.0943c0-.5896-.486-1.072-1.08-1.072z"/><path d="m25.7688 35.3975c-.594 0-1.08.4824-1.08 1.072v6.0943c0 .5896.486 1.072 1.08 1.072s1.08-.4824 1.08-1.072v-6.0943c0-.5896-.4806-1.072-1.08-1.072z"/><path d="m6.4476 16.8733h-1.6038v-1.5919c0-.5896-.486-1.072-1.08-1.072s-1.08.4824-1.08 1.072v1.5919h-1.6038c-.594 0-1.08.4824-1.08 1.072s.486 1.072 1.08 1.072h1.6038v1.5919c0 .5896.486 1.072 1.08 1.072s1.08-.4824 1.08-1.072v-1.5919h1.6038c.594 0 1.08-.4824 1.08-1.072s-.4806-1.072-1.08-1.072z"/><path d="m28.3824 3.92888h.7182v.71288c0 .5896.486 1.072 1.08 1.072s1.08-.4824 1.08-1.072v-.71288h.7182c.594 0 1.08-.4824 1.08-1.072s-.486-1.072-1.08-1.072h-.7182v-.71288c0-.5896-.486-1.072-1.08-1.072s-1.08.4824-1.08 1.072v.71288h-.7182c-.594 0-1.08.4824-1.08 1.072s.4806 1.072 1.08 1.072z"/><path d="m43.1676 10.3073h-2.7432v-2.72291c0-.5896-.486-1.072-1.08-1.072s-1.08.4824-1.08 1.072v2.72291h-2.7432c-.594 0-1.08.4824-1.08 1.072s.486 1.072 1.08 1.072h2.7432v2.7229c0 .5896.486 1.072 1.08 1.072s1.08-.4824 1.08-1.072v-2.7229h2.7432c.594 0 1.08-.4824 1.08-1.072s-.486-1.072-1.08-1.072z"/></g></svg>
|
||||
|
After Width: | Height: | Size: 2.2 KiB |
@@ -0,0 +1 @@
|
||||
<svg fill="none" height="767" viewBox="0 0 1440 767" width="1440" xmlns="http://www.w3.org/2000/svg"><path d="m-14.8936 273.223c3.6985-23.916 20.64073-43.806 39.6425-58.829 52.1994-41.35 125.4821-54.514 188.8431-33.939 63.362 20.576 126.106 43.663 143.978 107.78 6.113 21.881 8.527 44.758 16.167 66.152 20.043 56.063 78.466 96.02 138.04 94.405 76.273-2.058 128.14-59.891 191.368-93.277 45.844-24.204 114.163-1.515 139.233 56.119 22.523 51.749-14.13 106.529-25.956 156.132-12.114 50.842 7.818 101.153 49.232 133.123 41.746 32.257 105.13 48.452 156.846 35.797 50.03-12.235 84.13-49.846 122.07-81.861 49.16-41.483 127.43-43.319 187.69-35.443 28.79 3.761 58.22 9.823 86.53 3.407 49.23-11.15 57.18-52.412 57.67-95.776.68-60.09.02-120.202-1.11-180.27-2.24-118.233-6.42-236.444-6.42-354.72131h-1483.8014v281.20131z" fill="#ebf4ff"/><path d="m1524.87 305.304c-22.19 75.665-103.56 116.861-179.92 136.795-49.59 12.943-101.32 20.687-152.17 14.16s-100.97-28.518-134.41-67.325c-29.47-34.204-44.4-79.028-74.01-113.122-41.481-47.811-107.788-68.674-171.105-67.435s-124.552 22.102-183.13 46.151c-33.84 13.895-68.61 29.227-105.196 28.143-43.252-1.284-82.562-25.488-115.317-53.741-32.755-28.23-61.457-61.306-96.847-86.174-96.78-68.055-240.0465-60.0459-328.6549 18.341v-169.09706h1511.8599z" fill="#2f80ed" opacity=".3"/><path d="m623.282 521.593c2.635 9.624 7.264 18.938 13.088 27.169 23.587 33.363 62.144 64.094 105.174 47.412 32.777-12.699 57.183-48.872 70.869-79.891 10.343-23.43 11.561-49.514-2.103-72.059-23.299-38.452-72.375-43.276-109.958-24.713-25.004 12.345-50.428 31.77-68.212 53.342-11.914 14.491-13.398 32.08-8.858 48.74z" fill="#ebf4ff"/><g fill="#2f80ed"><path d="m1234.25 386.58c0-4.47-3.08-7.545-7.55-7.545 4.47 0 7.55-3.075 7.55-7.544 0 4.469 3.08 7.544 7.55 7.544-4.47 0-7.55 3.075-7.55 7.545z"/><path d="m1286.11 440.453c0-4.469-3.07-7.545-7.55-7.545 4.48 0 7.55-3.075 7.55-7.544 0 4.469 3.08 7.544 7.56 7.544-4.45 0-7.56 3.076-7.56 7.545z"/><path d="m1313.64 305.073c0-4.469-3.08-7.544-7.55-7.544 4.47 0 7.55-3.075 7.55-7.545 0 4.47 3.08 7.545 7.55 7.545-4.47 0-7.55 3.075-7.55 7.544z"/><path d="m1101.55 354.875c0-4.469-3.08-7.544-7.56-7.544 4.48 0 7.56-3.075 7.56-7.544 0 4.469 3.07 7.544 7.55 7.544-4.48 0-7.55 3.097-7.55 7.544z"/><path d="m1180.63 270.537c0-4.469-3.08-7.544-7.55-7.544 4.47 0 7.55-3.076 7.55-7.545 0 4.469 3.08 7.545 7.55 7.545-4.47 0-7.55 3.097-7.55 7.544z"/><path d="m1135.52 318.791c0-7.987-5.52-13.496-13.51-13.496 7.99 0 13.51-5.509 13.51-13.496 0 7.987 5.51 13.496 13.51 13.496-7.98 0-13.51 5.509-13.51 13.496z"/><path d="m1250.61 297.529c0-7.987-5.51-13.496-13.51-13.496 8 0 13.51-5.509 13.51-13.496 0 7.987 5.52 13.496 13.51 13.496-7.97 0-13.51 5.509-13.51 13.496z"/><path d="m1293.67 365.252c0-6.128-4.26-10.376-10.39-10.376 6.16 0 10.39-4.248 10.39-10.377 0 6.151 4.25 10.377 10.38 10.377-6.13 0-10.38 4.248-10.38 10.376z"/><path d="m1200.78 324.985c0-5.31-3.67-8.96-8.97-8.96 5.32 0 8.97-3.651 8.97-8.96 0 5.309 3.66 8.96 8.97 8.96-5.29-.022-8.97 3.65-8.97 8.96z"/><path d="m859.646 718.325c0-4.004 2.769-6.77 6.777-6.77-4.008 0-6.777-2.765-6.777-6.77 0 4.005-2.768 6.77-6.777 6.77 4.009 0 6.777 2.766 6.777 6.77z"/><path d="m813.05 766.711c0-4.004 2.768-6.77 6.777-6.77-4.009 0-6.777-2.765-6.777-6.77 0 4.005-2.768 6.77-6.777 6.77 4.009 0 6.777 2.766 6.777 6.77z"/><path d="m788.334 645.116c0-4.005 2.769-6.77 6.777-6.77-4.008 0-6.777-2.766-6.777-6.77 0 4.004-2.768 6.77-6.776 6.77 4.008 0 6.776 2.765 6.776 6.77z"/><path d="m978.861 689.852c0-4.005 2.769-6.771 6.777-6.771-4.008 0-6.777-2.765-6.777-6.77 0 4.005-2.768 6.77-6.776 6.77 4.008 0 6.776 2.766 6.776 6.771z"/><path d="m907.837 614.097c0-4.004 2.769-6.77 6.777-6.77-4.008 0-6.777-2.765-6.777-6.77 0 4.005-2.768 6.77-6.777 6.77 4.009 0 6.777 2.766 6.777 6.77z"/><path d="m948.344 657.438c0-7.168 4.96-12.124 12.136-12.124-7.176 0-12.136-4.956-12.136-12.124 0 7.168-4.961 12.124-12.137 12.124 7.176 0 12.137 4.956 12.137 12.124z"/><path d="m844.941 638.346c0-7.169 4.961-12.124 12.137-12.124-7.176 0-12.137-4.956-12.137-12.125 0 7.169-4.961 12.125-12.136 12.125 7.175 0 12.136 4.955 12.136 12.124z"/><path d="m806.273 699.188c0-5.509 3.809-9.315 9.324-9.315-5.515 0-9.324-3.805-9.324-9.314 0 5.509-3.809 9.314-9.346 9.314 5.537-.022 9.346 3.806 9.346 9.315z"/><path d="m889.699 662.992c0-4.757 3.3-8.054 8.062-8.054-4.762 0-8.062-3.296-8.062-8.053 0 4.757-3.299 8.053-8.061 8.053 4.784 0 8.061 3.297 8.061 8.054z"/></g></svg>
|
||||
|
After Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 22 KiB |
@@ -0,0 +1 @@
|
||||
<svg fill="none" height="43" viewBox="0 0 173 43" width="173" xmlns="http://www.w3.org/2000/svg"><g fill="#2f80ed"><path d="m63.375 37.6-21.6-36c-.5-1.1-1.6-1.6-2.9-1.6-1.1 0-2.1.5-2.9 1.6l-9.3 16.3-4.5-7.2c-.5-1.1-1.6-1.6-2.9-1.6-1.1 0-2.1.5-2.9 1.6l-16 26.9c-.5 1.1-.5 2.4 0 3.5.8 1.1 1.9 1.6 3.2 1.6h57.1c1.3 0 2.4-.5 2.9-1.6.3-1.1.3-2.5-.2-3.5zm-56.8-.3 12.5-21.1 4.5 7.5c.5 1.1 1.6 1.6 2.9 1.6 1.1 0 2.4-.5 2.9-1.6l9.6-16.3 18 29.9z"/><path d="m79.339 14.558-2.646-4.94899h-.196l.49 4.94899v22.442h-3.822v-34.83899h2.156l16.415 22.88299 2.548 4.704h.245l-.539-4.704v-22.34399h3.822v34.83899h-2.156z"/><path d="m104.371 24.75c0-4.1487.914-7.3173 2.744-9.506 1.862-2.2213 4.524-3.332 7.987-3.332 1.829 0 3.413.3103 4.753.931 1.372.588 2.499 1.4537 3.381 2.597.882 1.1107 1.535 2.4663 1.96 4.067.424 1.568.637 3.3157.637 5.243 0 4.1487-.931 7.3337-2.793 9.555-1.83 2.1887-4.476 3.283-7.938 3.283-1.83 0-3.43-.294-4.802-.882-1.34-.6207-2.45-1.4863-3.332-2.597-.882-1.1433-1.536-2.499-1.96-4.067-.425-1.6007-.637-3.3647-.637-5.292zm4.067 0c0 1.2413.114 2.4337.343 3.577.261 1.1433.653 2.1397 1.176 2.989.522.8493 1.208 1.5353 2.058 2.058.849.5227 1.878.784 3.087.784 4.442.0327 6.664-3.1033 6.664-9.408 0-1.274-.131-2.4827-.392-3.626-.229-1.1433-.605-2.1397-1.127-2.989-.523-.8493-1.209-1.519-2.058-2.009-.85-.5227-1.879-.784-3.087-.784-4.443-.0327-6.664 3.1033-6.664 9.408z"/><path d="m138.495 26.857 1.372 4.655h.049l1.225-4.753 5.488-14.259h4.214l-10.437 25.039h-1.666l-10.633-25.039h4.508z"/><path d="m154.686 14.313c1.241-.7513 2.678-1.3067 4.312-1.666 1.666-.3593 3.397-.539 5.194-.539 1.698 0 3.054.2287 4.067.686 1.045.4573 1.829 1.0617 2.352 1.813.555.7187.914 1.519 1.078 2.401.196.882.294 1.764.294 2.646 0 1.96-.049 3.871-.147 5.733s-.147 3.626-.147 5.292c0 1.2087.049 2.352.147 3.43s.277 2.0743.539 2.989h-2.891l-1.029-3.43h-.245c-.294.4573-.67.9147-1.127 1.372-.425.4247-.948.8167-1.568 1.176-.621.3267-1.34.6043-2.156.833-.817.2287-1.748.343-2.793.343-1.046 0-2.026-.1633-2.94-.49-.882-.3267-1.65-.784-2.303-1.372-.654-.6207-1.176-1.3557-1.568-2.205-.36-.8493-.539-1.813-.539-2.891 0-1.4373.294-2.6297.882-3.577.588-.98 1.404-1.7477 2.45-2.303 1.078-.588 2.352-.9963 3.822-1.225 1.502-.2613 3.152-.392 4.949-.392h1.323c.457 0 .914.0327 1.372.098.098-.98.147-1.862.147-2.646 0-1.7967-.36-3.0543-1.078-3.773-.719-.7187-2.026-1.078-3.92-1.078-.556 0-1.16.049-1.813.147-.621.0653-1.274.1797-1.96.343-.654.1307-1.291.3103-1.911.539-.588.196-1.111.4247-1.568.686zm6.958 19.649c.914 0 1.731-.1143 2.45-.343.718-.2613 1.339-.5717 1.862-.931.522-.392.947-.8167 1.274-1.274.359-.4573.62-.8983.784-1.323v-4.067c-.458-.0327-.931-.049-1.421-.049-.458-.0327-.915-.049-1.372-.049-1.013 0-2.009.0653-2.989.196-.948.098-1.797.3103-2.548.637-.719.294-1.307.7187-1.764 1.274-.425.5227-.637 1.1923-.637 2.009 0 1.1433.408 2.0907 1.225 2.842.816.7187 1.862 1.078 3.136 1.078z"/></g></svg>
|
||||
|
After Width: | Height: | Size: 2.8 KiB |
@@ -0,0 +1 @@
|
||||
function counterUp(t){"use strict";this.defaults={duration:3e3,prepend:"",append:"%",selector:".countup",start:0,end:100,intvalues:!1,interval:100};var e=this;this.upating=!1,this.intervalID=null,this.props={};for(var r in this.defaults)"undefined"!=typeof r&&(e.props[r]=e.defaults[r],t.hasOwnProperty(r)&&e.props.hasOwnProperty(r)&&(e.props[r]=t[r]));this.domelems=document.querySelectorAll(this.props.selector),this.elems=[];var n={};this.domelems.forEach(function(t){n.obj=t;var r=parseInt(t.getAttribute("cup-start"));isNaN(r)?n.start=e.props.start:n.start=r;var p=parseInt(t.getAttribute("cup-end"));isNaN(p)?n.end=e.props.end:n.end=p;var a=parseInt(t.getAttribute("cup-duration"));isNaN(a)?n.duration=e.props.duration:n.duration=a;var s=t.getAttribute("cup-prepend");null==s?n.prepend=e.props.prepend:n.prepend=s;var i=t.getAttribute("cup-append");null==i?n.append=e.props.append:n.append=i;var o=t.getAttribute("cup-intval");null==o?n.intvalues=e.props.intvalues:n.intvalues=o,n.step=(n.end-n.start)/(n.duration/e.props.interval),n.val=n.start,e.elems.push(n),n={}})}counterUp.prototype.start=function(){"use strict";var t=this;this.intervalID=setInterval(function(){t.updating||t.update()},t.props.interval)},counterUp.prototype.update=function(){"use strict";this.updating=!0;var t=!0;this.elems.forEach(function(e){e.val+=e.step,e.val<e.end?(1==e.intvalues?e.obj.innerHTML=e.prepend+Math.floor(e.val).toString()+e.append:e.obj.innerHTML=e.prepend+(Math.round(100*e.val)/100).toString()+e.append,t=!1):e.obj.innerHTML=e.prepend+e.end.toString()+e.append}),1==t&&clearInterval(this.intervalID),this.updating=!1};
|
||||
@@ -0,0 +1,104 @@
|
||||
|
||||
(function() {
|
||||
|
||||
/* ====================
|
||||
Preloader
|
||||
======================= */
|
||||
window.onload = function () {
|
||||
window.setTimeout(fadeout, 300);
|
||||
}
|
||||
|
||||
function fadeout() {
|
||||
document.querySelector('.preloader').style.opacity = '0';
|
||||
document.querySelector('.preloader').style.display = 'none';
|
||||
}
|
||||
|
||||
// =========== sticky menu
|
||||
window.onscroll = function () {
|
||||
var header_navbar = document.querySelector(".hero-section-wrapper-5 .header");
|
||||
var sticky = header_navbar.offsetTop;
|
||||
|
||||
if (window.pageYOffset > sticky) {
|
||||
header_navbar.classList.add("sticky");
|
||||
} else {
|
||||
header_navbar.classList.remove("sticky");
|
||||
}
|
||||
|
||||
// show or hide the back-top-top button
|
||||
var backToTo = document.querySelector(".scroll-top");
|
||||
if (document.body.scrollTop > 50 || document.documentElement.scrollTop > 50) {
|
||||
backToTo.style.display = "flex";
|
||||
} else {
|
||||
backToTo.style.display = "none";
|
||||
}
|
||||
};
|
||||
|
||||
// header-6 toggler-icon
|
||||
let navbarToggler6 = document.querySelector(".header-6 .navbar-toggler");
|
||||
var navbarCollapse6 = document.querySelector(".header-6 .navbar-collapse");
|
||||
|
||||
document.querySelectorAll(".header-6 .page-scroll").forEach(e =>
|
||||
e.addEventListener("click", () => {
|
||||
navbarToggler6.classList.remove("active");
|
||||
navbarCollapse6.classList.remove('show')
|
||||
})
|
||||
);
|
||||
navbarToggler6.addEventListener('click', function() {
|
||||
navbarToggler6.classList.toggle("active");
|
||||
})
|
||||
|
||||
|
||||
// section menu active
|
||||
function onScroll(event) {
|
||||
var sections = document.querySelectorAll('.page-scroll');
|
||||
var scrollPos = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop;
|
||||
|
||||
for (var i = 0; i < sections.length; i++) {
|
||||
var currLink = sections[i];
|
||||
var val = currLink.getAttribute('href');
|
||||
var refElement = document.querySelector(val);
|
||||
var scrollTopMinus = scrollPos + 73;
|
||||
if (refElement.offsetTop <= scrollTopMinus && (refElement.offsetTop + refElement.offsetHeight > scrollTopMinus)) {
|
||||
document.querySelector('.page-scroll').classList.remove('active');
|
||||
currLink.classList.add('active');
|
||||
} else {
|
||||
currLink.classList.remove('active');
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
window.document.addEventListener('scroll', onScroll);
|
||||
|
||||
|
||||
// ===== pricing-style-4 slider
|
||||
tns({
|
||||
container: '.pricing-active',
|
||||
autoplay: false,
|
||||
mouseDrag: true,
|
||||
gutter: 0,
|
||||
nav: false,
|
||||
controls: true,
|
||||
controlsText: [
|
||||
'<i class="lni lni-chevron-left prev"></i>',
|
||||
'<i class="lni lni-chevron-right prev"></i>',
|
||||
],
|
||||
responsive: {
|
||||
0: {
|
||||
items: 1,
|
||||
},
|
||||
768: {
|
||||
items: 2,
|
||||
},
|
||||
992: {
|
||||
items: 1.2,
|
||||
},
|
||||
1200: {
|
||||
items: 2,
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
// WOW active
|
||||
new WOW().init();
|
||||
|
||||
})();
|
||||
@@ -1,13 +0,0 @@
|
||||
{
|
||||
"name": "默认模板",
|
||||
"description": "标准企业官网模板,适用于各类企业展示",
|
||||
"version": "1.0.0",
|
||||
"author": "System",
|
||||
"fields": {
|
||||
"site_name": "网站名称",
|
||||
"banner": "轮播图列表",
|
||||
"news": "新闻列表",
|
||||
"solutions": "解决方案",
|
||||
"partners": "合作伙伴"
|
||||
}
|
||||
}
|
||||
@@ -1,82 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title data-field="site_name">企业官网</title>
|
||||
<link rel="stylesheet" href="./styles/main.css">
|
||||
</head>
|
||||
<body>
|
||||
<!-- 头部 -->
|
||||
<header class="header">
|
||||
<div class="container">
|
||||
<h1 data-field="site_name">企业官网</h1>
|
||||
<nav class="nav">
|
||||
<a href="/">首页</a>
|
||||
<a href="/news">新闻资讯</a>
|
||||
<a href="/solutions">解决方案</a>
|
||||
<a href="/contact">联系我们</a>
|
||||
</nav>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<!-- 轮播图 -->
|
||||
<section class="banner">
|
||||
<div class="banner-slides">
|
||||
<div class="slide active" data-field="banner">
|
||||
<img src="./images/banner1.jpg" alt="Banner 1">
|
||||
<div class="banner-content">
|
||||
<h2>欢迎来到我们的网站</h2>
|
||||
<p>专业的企业数字化解决方案提供商</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!-- 新闻资讯 -->
|
||||
<section class="news section">
|
||||
<div class="container">
|
||||
<h2 class="section-title">新闻资讯</h2>
|
||||
<div class="news-list" data-field="news">
|
||||
<div class="news-item">
|
||||
<h3>公司动态</h3>
|
||||
<p>这里是新闻内容...</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!-- 解决方案 -->
|
||||
<section class="solutions section">
|
||||
<div class="container">
|
||||
<h2 class="section-title">解决方案</h2>
|
||||
<div class="solutions-grid" data-field="solutions">
|
||||
<div class="solution-card">
|
||||
<h3>解决方案一</h3>
|
||||
<p>详细描述...</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!-- 合作伙伴 -->
|
||||
<section class="partners section">
|
||||
<div class="container">
|
||||
<h2 class="section-title">合作伙伴</h2>
|
||||
<div class="partners-grid" data-field="partners">
|
||||
<div class="partner-logo">Partner Logo</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!-- 底部 -->
|
||||
<footer class="footer">
|
||||
<div class="container">
|
||||
<p>© 2024 <span data-field="site_name">企业官网</span>. All rights reserved.</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
<!-- 数据注入脚本 -->
|
||||
<script src="./js/theme-loader.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,527 @@
|
||||
<!DOCTYPE html>
|
||||
<html class="no-js" lang="">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="x-ua-compatible" content="ie=edge" />
|
||||
<title>Nova - Bootstrap 5 Template</title>
|
||||
<meta name="description" content="" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<!-- Place favicon.ico in the root directory -->
|
||||
|
||||
<!-- ========================= CSS here ========================= -->
|
||||
<link rel="stylesheet" href="assets/css/bootstrap-5.0.0-beta1.min.css" />
|
||||
<link rel="stylesheet" href="assets/css/LineIcons.2.0.css"/>
|
||||
<link rel="stylesheet" href="assets/css/tiny-slider.css"/>
|
||||
<link rel="stylesheet" href="assets/css/animate.css"/>
|
||||
<link rel="stylesheet" href="assets/css/lindy-uikit.css"/>
|
||||
</head>
|
||||
<body>
|
||||
<!--[if lte IE 9]>
|
||||
<p class="browserupgrade">
|
||||
You are using an <strong>outdated</strong> browser. Please
|
||||
<a href="https://browsehappy.com/">upgrade your browser</a> to improve
|
||||
your experience and security.
|
||||
</p>
|
||||
<![endif]-->
|
||||
|
||||
<!-- ========================= preloader start ========================= -->
|
||||
<div class="preloader">
|
||||
<div class="loader">
|
||||
<div class="spinner">
|
||||
<div class="spinner-container">
|
||||
<div class="spinner-rotator">
|
||||
<div class="spinner-left">
|
||||
<div class="spinner-circle"></div>
|
||||
</div>
|
||||
<div class="spinner-right">
|
||||
<div class="spinner-circle"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========================= preloader end ========================= -->
|
||||
|
||||
<!-- ========================= hero-section-wrapper-5 start ========================= -->
|
||||
<section id="home" class="hero-section-wrapper-5">
|
||||
|
||||
<!-- ========================= header-6 start ========================= -->
|
||||
<header class="header header-6">
|
||||
<div class="navbar-area">
|
||||
<div class="container">
|
||||
<div class="row align-items-center">
|
||||
<div class="col-lg-12">
|
||||
<nav class="navbar navbar-expand-lg">
|
||||
<a class="navbar-brand" href="index.html">
|
||||
<img src="assets/img/logo/logo.svg" alt="Logo" />
|
||||
</a>
|
||||
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent6" aria-controls="navbarSupportedContent6" aria-expanded="false" aria-label="Toggle navigation">
|
||||
<span class="toggler-icon"></span>
|
||||
<span class="toggler-icon"></span>
|
||||
<span class="toggler-icon"></span>
|
||||
</button>
|
||||
|
||||
<div class="collapse navbar-collapse sub-menu-bar" id="navbarSupportedContent6">
|
||||
<ul id="nav6" class="navbar-nav ms-auto">
|
||||
<li class="nav-item">
|
||||
<a class="page-scroll active" href="#home">Home</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="page-scroll" href="#feature">Feature</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="page-scroll" href="#about">About</a>
|
||||
</li>
|
||||
|
||||
<li class="nav-item">
|
||||
<a class="page-scroll" href="#pricing">Pricing</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="page-scroll" href="#contact">Contact</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="header-action d-flex">
|
||||
<a href="#0"> <i class="lni lni-cart"></i> </a>
|
||||
<a href="#0"> <i class="lni lni-alarm"></i> </a>
|
||||
</div>
|
||||
<!-- navbar collapse -->
|
||||
</nav>
|
||||
<!-- navbar -->
|
||||
</div>
|
||||
</div>
|
||||
<!-- row -->
|
||||
</div>
|
||||
<!-- container -->
|
||||
</div>
|
||||
<!-- navbar area -->
|
||||
</header>
|
||||
<!-- ========================= header-6 end ========================= -->
|
||||
|
||||
<!-- ========================= hero-5 start ========================= -->
|
||||
<div class="hero-section hero-style-5 img-bg" style="background-image: url('assets/img/hero/hero-5/hero-bg.svg')">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-lg-6">
|
||||
<div class="hero-content-wrapper">
|
||||
<h2 class="mb-30 wow fadeInUp" data-wow-delay=".2s">You're Using Free Lite Version</h2>
|
||||
<p class="mb-30 wow fadeInUp" data-wow-delay=".4s">Please purchase full version of the template to get all sections and permission to use with commercial projects.</p>
|
||||
<a href="#0" class="button button-lg radius-50 wow fadeInUp" data-wow-delay=".6s">Get Started <i class="lni lni-chevron-right"></i> </a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-6 align-self-end">
|
||||
<div class="hero-image wow fadeInUp" data-wow-delay=".5s">
|
||||
<img src="assets/img/hero/hero-5/hero-img.svg" alt="">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========================= hero-5 end ========================= -->
|
||||
|
||||
</section>
|
||||
<!-- ========================= hero-section-wrapper-6 end ========================= -->
|
||||
|
||||
<!-- ========================= feature style-5 start ========================= -->
|
||||
<section id="feature" class="feature-section feature-style-5">
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-xxl-5 col-xl-5 col-lg-7 col-md-8">
|
||||
<div class="section-title text-center mb-60">
|
||||
<h3 class="mb-15 wow fadeInUp" data-wow-delay=".2s">Specializing In</h3>
|
||||
<p class="wow fadeInUp" data-wow-delay=".4s">Stop wasting time and money designing and managing a website that doesn’t get results. Happiness guaranteed!</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-lg-4 col-md-6">
|
||||
<div class="single-feature wow fadeInUp" data-wow-delay=".2s">
|
||||
<div class="icon">
|
||||
<i class="lni lni-vector"></i>
|
||||
<svg width="110" height="72" viewBox="0 0 110 72" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M110 54.7589C110 85.0014 85.3757 66.2583 55 66.2583C24.6243 66.2583 0 85.0014 0 54.7589C0 24.5164 24.6243 0 55 0C85.3757 0 110 24.5164 110 54.7589Z" fill="#EBF4FF"/>
|
||||
</svg>
|
||||
</div>
|
||||
<div class="content">
|
||||
<h5>Graphics Design</h5>
|
||||
<p>Short description for the ones who look for something new.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-4 col-md-6">
|
||||
<div class="single-feature wow fadeInUp" data-wow-delay=".4s">
|
||||
<div class="icon">
|
||||
<i class="lni lni-pallet"></i>
|
||||
<svg width="110" height="72" viewBox="0 0 110 72" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M110 54.7589C110 85.0014 85.3757 66.2583 55 66.2583C24.6243 66.2583 0 85.0014 0 54.7589C0 24.5164 24.6243 0 55 0C85.3757 0 110 24.5164 110 54.7589Z" fill="#EBF4FF"/>
|
||||
</svg>
|
||||
</div>
|
||||
<div class="content">
|
||||
<h5>Print Design</h5>
|
||||
<p>Short description for the ones who look for something new.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-4 col-md-6">
|
||||
<div class="single-feature wow fadeInUp" data-wow-delay=".6s">
|
||||
<div class="icon">
|
||||
<i class="lni lni-stats-up"></i>
|
||||
<svg width="110" height="72" viewBox="0 0 110 72" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M110 54.7589C110 85.0014 85.3757 66.2583 55 66.2583C24.6243 66.2583 0 85.0014 0 54.7589C0 24.5164 24.6243 0 55 0C85.3757 0 110 24.5164 110 54.7589Z" fill="#EBF4FF"/>
|
||||
</svg>
|
||||
</div>
|
||||
<div class="content">
|
||||
<h5>Business Analysis</h5>
|
||||
<p>Short description for the ones who look for something new.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-4 col-md-6">
|
||||
<div class="single-feature wow fadeInUp" data-wow-delay=".2s">
|
||||
<div class="icon">
|
||||
<i class="lni lni-code-alt"></i>
|
||||
<svg width="110" height="72" viewBox="0 0 110 72" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M110 54.7589C110 85.0014 85.3757 66.2583 55 66.2583C24.6243 66.2583 0 85.0014 0 54.7589C0 24.5164 24.6243 0 55 0C85.3757 0 110 24.5164 110 54.7589Z" fill="#EBF4FF"/>
|
||||
</svg>
|
||||
</div>
|
||||
<div class="content">
|
||||
<h5>Web Development</h5>
|
||||
<p>Short description for the ones who look for something new.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-4 col-md-6">
|
||||
<div class="single-feature wow fadeInUp" data-wow-delay=".4s">
|
||||
<div class="icon">
|
||||
<i class="lni lni-lock"></i>
|
||||
<svg width="110" height="72" viewBox="0 0 110 72" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M110 54.7589C110 85.0014 85.3757 66.2583 55 66.2583C24.6243 66.2583 0 85.0014 0 54.7589C0 24.5164 24.6243 0 55 0C85.3757 0 110 24.5164 110 54.7589Z" fill="#EBF4FF"/>
|
||||
</svg>
|
||||
</div>
|
||||
<div class="content">
|
||||
<h5>Best Security</h5>
|
||||
<p>Short description for the ones who look for something new.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-4 col-md-6">
|
||||
<div class="single-feature wow fadeInUp" data-wow-delay=".6s">
|
||||
<div class="icon">
|
||||
<i class="lni lni-code"></i>
|
||||
<svg width="110" height="72" viewBox="0 0 110 72" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M110 54.7589C110 85.0014 85.3757 66.2583 55 66.2583C24.6243 66.2583 0 85.0014 0 54.7589C0 24.5164 24.6243 0 55 0C85.3757 0 110 24.5164 110 54.7589Z" fill="#EBF4FF"/>
|
||||
</svg>
|
||||
</div>
|
||||
<div class="content">
|
||||
<h5>Web Design</h5>
|
||||
<p>Short description for the ones who look for something new.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
<!-- ========================= feature style-5 end ========================= -->
|
||||
|
||||
<!-- ========================= about style-4 start ========================= -->
|
||||
<section id="about" class="about-section about-style-4">
|
||||
<div class="container">
|
||||
<div class="row align-items-center">
|
||||
<div class="col-xl-5 col-lg-6">
|
||||
<div class="about-content-wrapper">
|
||||
<div class="section-title mb-30">
|
||||
<h3 class="mb-25 wow fadeInUp" data-wow-delay=".2s">The future of designing starts here</h3>
|
||||
<p class="wow fadeInUp" data-wow-delay=".3s">Stop wasting time and money designing and managing a website that doesn’t get results. Happiness guaranteed,</p>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="wow fadeInUp" data-wow-delay=".35s">
|
||||
<i class="lni lni-checkmark-circle"></i>
|
||||
Stop wasting time and money designing and managing a website that doesn’t get results.
|
||||
</li>
|
||||
<li class="wow fadeInUp" data-wow-delay=".4s">
|
||||
<i class="lni lni-checkmark-circle"></i>
|
||||
Stop wasting time and money designing and managing.
|
||||
</li>
|
||||
<li class="wow fadeInUp" data-wow-delay=".45s">
|
||||
<i class="lni lni-checkmark-circle"></i>
|
||||
Stop wasting time and money designing and managing a website that doesn’t get results.
|
||||
</li>
|
||||
</ul>
|
||||
<a href="#0" class="button button-lg radius-10 wow fadeInUp" data-wow-delay=".5s">Learn More</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xl-7 col-lg-6">
|
||||
<div class="about-image text-lg-right wow fadeInUp" data-wow-delay=".5s">
|
||||
<img src="assets/img/about/about-4/about-img.svg" alt="">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<!-- ========================= about style-4 end ========================= -->
|
||||
|
||||
<!-- ========================= pricing style-4 start ========================= -->
|
||||
<section id="pricing" class="pricing-section pricing-style-4 bg-light">
|
||||
<div class="container">
|
||||
<div class="row align-items-center">
|
||||
<div class="col-xl-5 col-lg-6">
|
||||
<div class="section-title mb-60">
|
||||
<h3 class="mb-15 wow fadeInUp" data-wow-delay=".2s">Pricing Plan</h3>
|
||||
<p class="wow fadeInUp" data-wow-delay=".4s">Stop wasting time and money designing and managing a website that doesn’t get results. Happiness guaranteed!Stop wasting time and money designing and managing a website that doesn’t get results. Happiness guaranteed!</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xl-7 col-lg-6">
|
||||
<div class="pricing-active-wrapper wow fadeInUp" data-wow-delay=".4s">
|
||||
<div class="pricing-active">
|
||||
<div class="single-pricing-wrapper">
|
||||
<div class="single-pricing">
|
||||
<h6>Basic Design</h6>
|
||||
<h4>Web Design</h4>
|
||||
<h3>$ 29.00</h3>
|
||||
<ul>
|
||||
<li>Carefully crafted components</li>
|
||||
<li>Amazing page examples</li>
|
||||
<li>Super friendly support team</li>
|
||||
<li>Awesome Support</li>
|
||||
</ul>
|
||||
<a href="#0" class="button radius-30">Get Started</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-pricing-wrapper">
|
||||
<div class="single-pricing">
|
||||
<h6>Standard Design</h6>
|
||||
<h4>Web Development</h4>
|
||||
<h3>$ 89.00</h3>
|
||||
<ul>
|
||||
<li>Carefully crafted components</li>
|
||||
<li>Amazing page examples</li>
|
||||
<li>Super friendly support team</li>
|
||||
<li>Awesome Support</li>
|
||||
</ul>
|
||||
<a href="#0" class="button radius-30">Get Started</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-pricing-wrapper">
|
||||
<div class="single-pricing">
|
||||
<h6>Pro Design</h6>
|
||||
<h4>Design & Develop</h4>
|
||||
<h3>$ 199.00</h3>
|
||||
<ul>
|
||||
<li>Carefully crafted components</li>
|
||||
<li>Amazing page examples</li>
|
||||
<li>Super friendly support team</li>
|
||||
<li>Awesome Support</li>
|
||||
</ul>
|
||||
<a href="#0" class="button radius-30">Get Started</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<!-- ========================= pricing style-4 end ========================= -->
|
||||
|
||||
<!-- ========================= contact-style-3 start ========================= -->
|
||||
<section id="contact" class="contact-section contact-style-3">
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-xxl-5 col-xl-5 col-lg-7 col-md-10">
|
||||
<div class="section-title text-center mb-50">
|
||||
<h3 class="mb-15">Get in touch</h3>
|
||||
<p>Stop wasting time and money designing and managing a website that doesn’t get results. Happiness guaranteed!</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-lg-8">
|
||||
<div class="contact-form-wrapper">
|
||||
<form action="" method="">
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<div class="single-input">
|
||||
<input type="text" id="name" name="name" class="form-input" placeholder="Name">
|
||||
<i class="lni lni-user"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="single-input">
|
||||
<input type="email" id="email" name="email" class="form-input" placeholder="Email">
|
||||
<i class="lni lni-envelope"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="single-input">
|
||||
<input type="text" id="number" name="number" class="form-input" placeholder="Number">
|
||||
<i class="lni lni-phone"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="single-input">
|
||||
<input type="text" id="subject" name="subject" class="form-input" placeholder="Subject">
|
||||
<i class="lni lni-text-format"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-12">
|
||||
<div class="single-input">
|
||||
<textarea name="message" id="message" class="form-input" placeholder="Message" rows="6"></textarea>
|
||||
<i class="lni lni-comments-alt"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-12">
|
||||
<div class="form-button">
|
||||
<button type="submit" class="button"> <i class="lni lni-telegram-original"></i> Submit</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="col-lg-4">
|
||||
<div class="left-wrapper">
|
||||
<div class="row">
|
||||
<div class="col-lg-12 col-md-6">
|
||||
<div class="single-item">
|
||||
<div class="icon">
|
||||
<i class="lni lni-phone"></i>
|
||||
</div>
|
||||
<div class="text">
|
||||
<p>0045939863784</p>
|
||||
<p>+004389478327</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-12 col-md-6">
|
||||
<div class="single-item">
|
||||
<div class="icon">
|
||||
<i class="lni lni-envelope"></i>
|
||||
</div>
|
||||
<div class="text">
|
||||
<p>yourmail@gmail.com</p>
|
||||
<p>admin@yourwebsite.com</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-12 col-md-6">
|
||||
<div class="single-item">
|
||||
<div class="icon">
|
||||
<i class="lni lni-map-marker"></i>
|
||||
</div>
|
||||
<div class="text">
|
||||
<p>John's House, 13/5 Road, Sidny United State Of America</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<!-- ========================= contact-style-3 end ========================= -->
|
||||
|
||||
<!-- ========================= clients-logo start ========================= -->
|
||||
<section class="clients-logo-section pt-100 pb-100">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<div class="client-logo wow fadeInUp" data-wow-delay=".2s">
|
||||
<img src="assets/img/clients/brands.svg" alt="" class="w-100">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<!-- ========================= clients-logo end ========================= -->
|
||||
|
||||
<!-- ========================= footer style-4 start ========================= -->
|
||||
<footer class="footer footer-style-4">
|
||||
<div class="container">
|
||||
<div class="widget-wrapper">
|
||||
<div class="row">
|
||||
<div class="col-xl-3 col-lg-4 col-md-6">
|
||||
<div class="footer-widget wow fadeInUp" data-wow-delay=".2s">
|
||||
<div class="logo">
|
||||
<a href="#0"> <img src="assets/img/logo/logo.svg" alt=""> </a>
|
||||
</div>
|
||||
<p class="desc">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Facilisis nulla placerat amet amet congue.</p>
|
||||
<ul class="socials">
|
||||
<li> <a href="#0"> <i class="lni lni-facebook-filled"></i> </a> </li>
|
||||
<li> <a href="#0"> <i class="lni lni-twitter-filled"></i> </a> </li>
|
||||
<li> <a href="#0"> <i class="lni lni-instagram-filled"></i> </a> </li>
|
||||
<li> <a href="#0"> <i class="lni lni-linkedin-original"></i> </a> </li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xl-2 offset-xl-1 col-lg-2 col-md-6 col-sm-6">
|
||||
<div class="footer-widget wow fadeInUp" data-wow-delay=".3s">
|
||||
<h6>Quick Link</h6>
|
||||
<ul class="links">
|
||||
<li> <a href="#0">Home</a> </li>
|
||||
<li> <a href="#0">About</a> </li>
|
||||
<li> <a href="#0">Service</a> </li>
|
||||
<li> <a href="#0">Testimonial</a> </li>
|
||||
<li> <a href="#0">Contact</a> </li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xl-3 col-lg-3 col-md-6 col-sm-6">
|
||||
<div class="footer-widget wow fadeInUp" data-wow-delay=".4s">
|
||||
<h6>Services</h6>
|
||||
<ul class="links">
|
||||
<li> <a href="#0">Web Design</a> </li>
|
||||
<li> <a href="#0">Web Development</a> </li>
|
||||
<li> <a href="#0">Seo Optimization</a> </li>
|
||||
<li> <a href="#0">Blog Writing</a> </li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xl-3 col-lg-3 col-md-6">
|
||||
<div class="footer-widget wow fadeInUp" data-wow-delay=".5s">
|
||||
<h6>Download App</h6>
|
||||
<ul class="download-app">
|
||||
<li>
|
||||
<a href="#0">
|
||||
<span class="icon"><i class="lni lni-apple"></i></span>
|
||||
<span class="text">Download on the <b>App Store</b> </span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#0">
|
||||
<span class="icon"><i class="lni lni-play-store"></i></span>
|
||||
<span class="text">GET IT ON <b>Play Store</b> </span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="copyright-wrapper wow fadeInUp" data-wow-delay=".2s">
|
||||
<p>Design and Developed by <a href="https://uideck.com" rel="nofollow" target="_blank">UIdeck</a> Built-with <a href="https://uideck.com" rel="nofollow" target="_blank">Lindy UI Kit</a>. Distributed by <a href="https://themewagon.com" target="_blank">ThemeWagon</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
<!-- ========================= footer style-4 end ========================= -->
|
||||
|
||||
<!-- ========================= scroll-top start ========================= -->
|
||||
<a href="#" class="scroll-top"> <i class="lni lni-chevron-up"></i> </a>
|
||||
<!-- ========================= scroll-top end ========================= -->
|
||||
|
||||
|
||||
<!-- ========================= JS here ========================= -->
|
||||
<script src="assets/js/bootstrap-5.0.0-beta1.min.js"></script>
|
||||
<script src="assets/js/tiny-slider.js"></script>
|
||||
<script src="assets/js/wow.min.js"></script>
|
||||
<script src="assets/js/main.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,213 +0,0 @@
|
||||
/**
|
||||
* 模板数据注入脚本
|
||||
* 功能:监听 postMessage 事件,当收到 SET_SITE_DATA 时,
|
||||
* 自动寻找带有 data-field 属性的 HTML 标签,替换为对应的数据
|
||||
*/
|
||||
|
||||
(function() {
|
||||
'use strict';
|
||||
|
||||
// 日志开关
|
||||
const DEBUG = false;
|
||||
|
||||
function log(...args) {
|
||||
if (DEBUG) {
|
||||
console.log('[ThemeLoader]', ...args);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 替换元素内容或属性
|
||||
* @param {HTMLElement} element - 目标元素
|
||||
* @param {string} field - 字段名
|
||||
* @param {any} value - 数据值
|
||||
*/
|
||||
function applyDataToElement(element, field, value) {
|
||||
if (value === undefined || value === null) {
|
||||
log(`字段 ${field} 值为空,跳过`);
|
||||
return;
|
||||
}
|
||||
|
||||
// 如果是数组或对象,尝试解析
|
||||
if (typeof value === 'string') {
|
||||
try {
|
||||
const parsed = JSON.parse(value);
|
||||
if (parsed) {
|
||||
value = parsed;
|
||||
}
|
||||
} catch (e) {
|
||||
// 保持原值
|
||||
}
|
||||
}
|
||||
|
||||
// 处理数组类型(用于轮播图、列表等)
|
||||
if (Array.isArray(value)) {
|
||||
handleArrayField(element, field, value);
|
||||
return;
|
||||
}
|
||||
|
||||
// 处理对象类型
|
||||
if (typeof value === 'object') {
|
||||
handleObjectField(element, field, value);
|
||||
return;
|
||||
}
|
||||
|
||||
// 处理基础类型(字符串、数字)
|
||||
// 1. 如果是 input/textarea/select,设置为 value
|
||||
const tagName = element.tagName.toLowerCase();
|
||||
if (tagName === 'input' || tagName === 'textarea' || tagName === 'select') {
|
||||
element.value = value;
|
||||
return;
|
||||
}
|
||||
|
||||
// 2. 如果有 src 属性,设置为 src(图片等)
|
||||
if (element.hasAttribute('src') && !element.hasAttribute('data-keep-src')) {
|
||||
// 检查是否是占位符图片
|
||||
const currentSrc = element.getAttribute('src');
|
||||
if (!currentSrc || currentSrc.indexOf('placeholder') > -1) {
|
||||
element.src = value;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
// 3. 否则设置为 innerText
|
||||
element.innerText = value;
|
||||
}
|
||||
|
||||
/**
|
||||
* 处理数组类型的字段(如轮播图、列表)
|
||||
*/
|
||||
function handleArrayField(container, field, dataList) {
|
||||
// 查找模板元素(带有 data-template 属性的元素)
|
||||
const templateElement = container.querySelector('[data-template]');
|
||||
if (!templateElement) {
|
||||
log(`字段 ${field} 未找到模板元素`);
|
||||
return;
|
||||
}
|
||||
|
||||
const template = templateElement.cloneNode(true);
|
||||
template.removeAttribute('data-template');
|
||||
template.style.display = '';
|
||||
|
||||
// 清空容器
|
||||
container.innerHTML = '';
|
||||
|
||||
// 渲染每个数据项
|
||||
dataList.forEach((item, index) => {
|
||||
const itemElement = template.cloneNode(true);
|
||||
applyDataToObject(itemElement, item, index);
|
||||
container.appendChild(itemElement);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 处理对象类型的字段
|
||||
*/
|
||||
function handleObjectField(element, field, data) {
|
||||
// 递归处理对象属性
|
||||
applyDataToObject(element, data);
|
||||
}
|
||||
|
||||
/**
|
||||
* 将数据应用到元素及其子元素
|
||||
*/
|
||||
function applyDataToObject(element, data, index = 0) {
|
||||
// 处理 data-field 属性
|
||||
const fieldElements = element.querySelectorAll('[data-field]');
|
||||
fieldElements.forEach(el => {
|
||||
const field = el.getAttribute('data-field');
|
||||
// 支持点号分隔的路径,如 "banner.0.image"
|
||||
const value = getNestedValue(data, field);
|
||||
if (value !== undefined) {
|
||||
applyDataToElement(el, field, value);
|
||||
}
|
||||
});
|
||||
|
||||
// 也处理元素本身的 data-field
|
||||
if (element.hasAttribute('data-field')) {
|
||||
const field = element.getAttribute('data-field');
|
||||
const value = getNestedValue(data, field);
|
||||
if (value !== undefined) {
|
||||
applyDataToElement(element, field, value);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取嵌套属性值
|
||||
* @param {object} obj - 数据对象
|
||||
* @param {string} path - 属性路径,如 "banner.0.image"
|
||||
* @returns {any}
|
||||
*/
|
||||
function getNestedValue(obj, path) {
|
||||
if (!path) return obj;
|
||||
|
||||
const keys = path.split('.');
|
||||
let value = obj;
|
||||
|
||||
for (const key of keys) {
|
||||
if (value === null || value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
value = value[key];
|
||||
}
|
||||
|
||||
return value;
|
||||
}
|
||||
|
||||
/**
|
||||
* 初始化数据注入
|
||||
*/
|
||||
function init() {
|
||||
log('ThemeLoader 初始化');
|
||||
|
||||
// 监听来自父窗口的消息
|
||||
window.addEventListener('message', function(event) {
|
||||
log('收到消息:', event.data);
|
||||
|
||||
// 验证消息类型
|
||||
if (!event.data || event.data.type !== 'SET_SITE_DATA') {
|
||||
return;
|
||||
}
|
||||
|
||||
const siteData = event.data.data;
|
||||
if (!siteData) {
|
||||
log('未收到有效数据');
|
||||
return;
|
||||
}
|
||||
|
||||
log('开始注入数据:', siteData);
|
||||
|
||||
// 查找所有带有 data-field 属性的元素
|
||||
const elements = document.querySelectorAll('[data-field]');
|
||||
|
||||
elements.forEach(element => {
|
||||
const field = element.getAttribute('data-field');
|
||||
const value = siteData[field];
|
||||
|
||||
if (value !== undefined) {
|
||||
applyDataToElement(element, field, value);
|
||||
}
|
||||
});
|
||||
|
||||
// 触发自定义事件,通知数据已加载
|
||||
window.dispatchEvent(new CustomEvent('themeDataLoaded', {
|
||||
detail: siteData
|
||||
}));
|
||||
|
||||
log('数据注入完成');
|
||||
});
|
||||
|
||||
// 发送就绪消息给父窗口
|
||||
window.parent.postMessage({
|
||||
type: 'THEME_READY'
|
||||
}, '*');
|
||||
}
|
||||
|
||||
// DOM 加载完成后初始化
|
||||
if (document.readyState === 'loading') {
|
||||
document.addEventListener('DOMContentLoaded', init);
|
||||
} else {
|
||||
init();
|
||||
}
|
||||
})();
|
||||
|
After Width: | Height: | Size: 105 KiB |
@@ -1,153 +0,0 @@
|
||||
/* 基础样式 */
|
||||
* {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
|
||||
line-height: 1.6;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
.container {
|
||||
max-width: 1200px;
|
||||
margin: 0 auto;
|
||||
padding: 0 20px;
|
||||
}
|
||||
|
||||
.section {
|
||||
padding: 60px 0;
|
||||
}
|
||||
|
||||
.section-title {
|
||||
text-align: center;
|
||||
font-size: 32px;
|
||||
margin-bottom: 40px;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
/* 头部 */
|
||||
.header {
|
||||
background: #fff;
|
||||
box-shadow: 0 2px 8px rgba(0,0,0,0.1);
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
z-index: 1000;
|
||||
}
|
||||
|
||||
.header .container {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
height: 70px;
|
||||
}
|
||||
|
||||
.header h1 {
|
||||
font-size: 24px;
|
||||
color: #1890ff;
|
||||
}
|
||||
|
||||
.nav a {
|
||||
margin-left: 30px;
|
||||
text-decoration: none;
|
||||
color: #333;
|
||||
transition: color 0.3s;
|
||||
}
|
||||
|
||||
.nav a:hover {
|
||||
color: #1890ff;
|
||||
}
|
||||
|
||||
/* 轮播图 */
|
||||
.banner {
|
||||
margin-top: 70px;
|
||||
height: 500px;
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.banner-slides .slide {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.banner-slides .slide.active {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.banner-slides .slide img {
|
||||
width: 100%;
|
||||
height: 500px;
|
||||
object-fit: cover;
|
||||
}
|
||||
|
||||
.banner-content {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
transform: translate(-50%, -50%);
|
||||
text-align: center;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.banner-content h2 {
|
||||
font-size: 48px;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.banner-content p {
|
||||
font-size: 20px;
|
||||
}
|
||||
|
||||
/* 新闻 */
|
||||
.news-list {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(3, 1fr);
|
||||
gap: 30px;
|
||||
}
|
||||
|
||||
.news-item {
|
||||
background: #f5f5f5;
|
||||
padding: 20px;
|
||||
border-radius: 8px;
|
||||
}
|
||||
|
||||
/* 解决方案 */
|
||||
.solutions-grid {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(4, 1fr);
|
||||
gap: 20px;
|
||||
}
|
||||
|
||||
.solution-card {
|
||||
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
||||
padding: 40px 20px;
|
||||
border-radius: 8px;
|
||||
text-align: center;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
/* 合作伙伴 */
|
||||
.partners-grid {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(5, 1fr);
|
||||
gap: 20px;
|
||||
}
|
||||
|
||||
.partner-logo {
|
||||
background: #f5f5f5;
|
||||
padding: 30px;
|
||||
text-align: center;
|
||||
border-radius: 8px;
|
||||
}
|
||||
|
||||
/* 底部 */
|
||||
.footer {
|
||||
background: #333;
|
||||
color: #fff;
|
||||
padding: 30px 0;
|
||||
text-align: center;
|
||||
}
|
||||