This commit is contained in:
unknown
2020-12-09 19:06:11 +08:00
parent 919c6dc0db
commit 3089f1c825
30 changed files with 4000 additions and 2870 deletions

View File

@@ -1,9 +1,12 @@
<template>
<div id="app">
<router-view/>
<router-view />
</div>
</template>
<script>
export default {
mounted() {},
};
</script>
<style>
</style>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

BIN
src/assets/img/iot1.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 113 KiB

BIN
src/assets/img/iot2.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 121 KiB

View File

@@ -1,396 +0,0 @@
var isMobile = null;
var isPhoneWidth = null;
var wasMobile = isMobile;
var wasDesktop = !isMobile;
var isMiniHeader = false;
var myLocationLat = null;
var myLocationLong = null;
class Common {
constructor(name, age) {
this.name = name;
this.age = age;
}
init() {
var self = this;
isMobile = common.isMobile();
isPhoneWidth = common.isPhone();
//create trigger to resizeEnd event, called after event is finished
$(window).resize(function () {
if (this.resizeTO) clearTimeout(this.resizeTO);
this.resizeTO = setTimeout(function () {
$(this).trigger('resizeEnd');
}, 100);
});
//cdetermine scren type and call style functions after window resize is completed
$(window).on('resizeEnd', function () {
self.adjustElementsForScreen();
});
$(window).scroll(function () {
if ($(window).scrollTop() > 200) {
if (isMiniHeader === false && !self.isMobile()) {
$('.header').addClass('mini');
isMiniHeader = true;
}
} else {
if (isMiniHeader === true) {
$('.header').removeClass('mini');
isMiniHeader = false;
}
}
//var scroll = $(window).scrollTop();
});
$.scrollToElement = function ($element) {
var adjustment = 0;
if (isMiniHeader) {
adjustment = 35;
}
var $header = $('.header:first');
$('html,body').animate({ scrollTop: $element.offset().top - ($header.length > 0 ? $header.height() : 0) - adjustment }, 'slow');
};
}
adjustElementsForScreen() {
isMobile = this.isMobile();
isPhoneWidth = this.isPhone();
if (!this.isMobile()) {
$(".mobileContent").hide();
}
if (isMobile) wasMobile = true;
if (!isMobile) wasDesktop = true;
if (wasMobile && !isMobile) location.reload();
if (isMobile && isMiniHeader === true) {
$('.header').removeClass('mini');
isMiniHeader = false;
}
this.adjustContentBannersForScreen();
}
initHeader() {
//go to main page if not there on logo click
$(".logoCell .logo").on("click", function () {
if (window.location.href.indexOf("index") === -1) {
window.location.href = "#/index";
}
});
//show/hide main menu dropdowns on hover
$(".mainMenu > tbody > tr > td")
.on("mouseenter", function (e) {
e.stopPropagation();
$(".dropDown").hide();
$("table.mainMenu > tbody > tr > td.selected").css("box-shadow", "none");
$(this).find(".dropDown").addClass("droppedDown");
$(this).find(".dropDown").slideDown();
})
.on("mouseleave", function (e) {
e.stopPropagation();
$(this).find(".dropDown").removeClass("droppedDown");
$(this).find(".dropDown").hide();
$("table.mainMenu > tbody > tr > td.selected").css("box-shadow", "0 -3px 0 #ff0000 inset");
});
}
initListeners() {
$("#hamburger").on("click", function () {
if ($("#mobileLanguageMenu").hasClass("showing")) {
$("#mobileLanguageMenu").hide();
$("#mobileLanguageMenu").removeClass("showing");
}
if ($("#mobileMenu").hasClass("showing")) {
common.hideMobileMenu();
} else {
common.showMobileMenu();
}
});
$("#mobileLanguage").on("click", function (e) {
if ($("#mobileMenu").hasClass("showing")) {
$("#mobileMenu").hide();
$("#mobileMenu").removeClass("showing");
}
if ($("#mobileLanguageMenu").hasClass("showing")) {
hideMobileLanguageMenu();
} else {
common.showMobileLanguageMenu();
}
});
$("#screenOverlayBehindHeader, .linkGoBack").on("click", function (e) {
if ($("#mobileMenu").hasClass("showing")) {
common.hideMobileMenu();
}
if ($("#mobileLanguageMenu").hasClass("showing")) {
common.hideMobileLanguageMenu();
}
});
$("#mobileLanguageMenu a").on("click", function (e) {
e.preventDefault();
});
//show support form
$("a.linkSupport").on("click", function (e) {
e.preventDefault();
common.showForm("support");
});
//show contact form
$("a.linkContactUs").on("click", function (e) {
e.preventDefault();
common.showForm("contact");
});
$("#scrollToBoxes").on("click", function (e) {
e.preventDefault();
$.scrollToElement($("#pageBoxesContainer"));
});
$('.cookiesInfo').children('input[type=button]').on('click', function () {
$(this).parent().remove();
});
}
initMobileMenu() {
$("#mobileMenu label").on("click", function (e) {
e.preventDefault();
$("#mobileMenu .subMenu").not($(this).siblings()).slideUp();
$(".hasSubmenu").not($(this)).css("font-weight", "normal");
$(this).css("font-weight", "bold");
//$(this).parent().css("border-bottom", "none");
$(this).parent().find(".subMenu").slideDown();
});
$("#mobileMenu a").on("click", function (e) {
common.hideMobileMenu();
});
}
initForms() {
$(".btnQuitForm").on("click", function () {
$("#forms").hide();
$("#screenOverlay").hide();
$("#formContactContainer").hide();
$("#formSupportContainer").hide();
});
$("#formSupport").on("submit", function (e) {
e.preventDefault();
common.submitSupportForm($(this));
});
$("#formContact").on("submit", function (e) {
e.preventDefault();
common.submitContactForm($(this));
});
}
showForm(formName) {
$("#forms").show();
$("#screenOverlay").show();
$(".contactTable").show();
$(".formInputContainer").show();
$(".formResultContainer").hide();
if (formName === "contact") {
var $conCommentsTitle = $("label[for='conComments']");
if ($(".contentTableRight").find("[data-contact-link]").length) {
$conCommentsTitle.html("Berätta vad du vill veta mer om gällande " +
$(".contentTableRight").find("[data-contact-link]").data("contact-link") + ": *");
} else {
$conCommentsTitle.html("Vad vill du veta mer om: ");
}
$("#formContactContainer").show();
} else if (formName === "support") {
$("#formSupportContainer").show();
}
scrollToTop();
}
submitSupportForm(form) {
$.post("http://biz199.inmotionhosting.com/~rustyt6/pythagoras/php/submit_support_form.php",
{
subject: $("#supSubject").val(),
company: $("#supCompany").val(),
name: $("#supName").val(),
email: $("#supEmail").val(),
phone: $("#supPhone").val(),
product: $("#supProduct").val(),
comments: $("#supComments").val()
},
function (data) {
console.log(data);
}
);
$(".formInputContainer").hide();
$(".formResultContainer").show();
scrollToTop();
$("#supSubject").val("");
$("#supCompany").val("");
$("#supName").val("");
$("#supEmail").val("");
$("#supPhone").val("");
$("#supProduct").val("");
$("#supComments").val("");
}
submitContactForm(form) {
$.post("http://biz199.inmotionhosting.com/~rustyt6/pythagoras/php/submit_contact_form.php",
{
name: $("#conName").val(),
email: $("#conEmail").val(),
phone: $("#conPhone").val(),
comments: $("#conComments").val()
},
function (data) {
console.log(data);
}
);
$(".contactTable").hide();
$(".formResultContainer").show();
scrollToTop();
$("#conName").val("");
$("#conEmail").val("");
$("#conPhone").val("");
$("#conComments").val("");
}
adjustContentBannersForScreen() {
if (this.isMobile()) {
$("#pageBannerImage1").attr("src", "images/banner_page_mobile_solutions_mobile.jpg");
$("#pageBannerImage2").attr("src", "images/banner_page_ifrs16_mobile.jpg");
$("#pageBannerImage3").attr("src", "images/banner_page_gdpr_mobile.jpg");
} else {
$("#pageBannerImage1").attr("src", "images/banner_page_mobile_solutions.jpg");
$("#pageBannerImage2").attr("src", "images/banner_page_ifrs16.jpg");
$("#pageBannerImage3").attr("src", "images/banner_page_gdpr.jpg");
}
}
showMobileMenu() {
$("#screenOverlayBehindHeader").show();
$("#mobileMenu").slideDown();
$("#mobileMenu").addClass("showing");
}
hideMobileMenu() {
$("#mobileMenu").slideUp(function () {
$("#screenOverlayBehindHeader").hide();
});
$("#mobileMenu").removeClass("showing");
}
showMobileLanguageMenu() {
$("#screenOverlayBehindHeader").show();
$("#mobileLanguageMenu").slideDown();
$("#mobileLanguageMenu").addClass("showing");
}
hideMobileLanguageMenu() {
$("#mobileLanguageMenu").slideUp(function () {
$("#screenOverlayBehindHeader").hide();
});
$("#mobileLanguageMenu").removeClass("showing");
}
scrollToTop() {
$("body,html").animate({ scrollTop: 0 }, "slow");
}
isMobile() {
var ua = navigator.userAgent;
var ipad = ua.match(/(iPad).*OS\s([\d_]+)/),
isIphone = !ipad && ua.match(/(iPhone\sOS)\s([\d_]+)/),
isAndroid = ua.match(/(Android)\s+([\d.]+)/),
isMobile = isIphone || isAndroid;
return isMobile;
}
isPhone() {
var ua = navigator.userAgent;
var ipad = ua.match(/(iPad).*OS\s([\d_]+)/);
var isIphone = !ipad && ua.match(/(iPhone\sOS)\s([\d_]+)/);
return isIphone;
}
}
export const common = new Common();

File diff suppressed because one or more lines are too long

View File

@@ -1,180 +1,186 @@
<template>
<div>
<div class="footer">
<div class="row1">
<div class="pageWidth">
<table class="footerTable">
<thead class="bread desktop smallDesktop">
<tr><th >我们的办公室</th>
<th>快速链接</th>
</tr></thead>
<tbody><tr>
<td class="stackable">
<ul class="quickLinks bread">
<li v-for="item in contactData" :key="item.name" >
<label>{{item.name+""}}</label>
<label>{{item.value}}</label>
</li>
</ul>
</td>
<td class="quickLinksContainer">
<div class="mobile mobileFooterTitle bread">Snabblänkar</div>
<ul class="quickLinks bread">
<li v-for="menu in menus" :key="menu.name" >
<router-link :to="menu.url">{{menu.name}}</router-link>
</li>
</ul>
</td></tr></tbody></table>
</div>
</div>
<div class="footer">
<div class="row1">
<div class="pageWidth">
<table class="footerTable">
<thead class="bread desktop smallDesktop">
<tr>
<th>我们的办公室</th>
<th>快速链接</th>
</tr>
</thead>
<tbody>
<tr>
<td class="stackable">
<ul class="quickLinks bread">
<li v-for="item in contactData" :key="item.name">
<label>{{item.name+""}}</label>
<label>{{item.value}}</label>
</li>
</ul>
<div class="row2">
<div class="contentContainer pageWidth">
<div class="bread">Copyright © 2018 Bimwe Technology co. LTD</div>
</div>
</div>
</td>
<td class="quickLinksContainer">
<div class="mobile mobileFooterTitle bread">Snabblänkar</div>
<ul class="quickLinks bread">
<li v-for="menu in menus" :key="menu.name">
<router-link :to="menu.url">{{menu.name}}</router-link>
</li>
</ul>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<!-- container for support and content forms -->
<div id="forms">
<!-- SUPPORT FORM -->
<div id="formContactContainer" class="formContainer bottomShadow">
<div class="row2">
<div class="contentContainer pageWidth">
<div class="bread">Copyright © 2018 Bimwe Technology co. LTD</div>
</div>
</div>
<span class="btnQuitForm">X</span>
<!-- container for support and content forms -->
<div id="forms">
<!-- SUPPORT FORM -->
<div id="formContactContainer" class="formContainer bottomShadow">
<div class="formResultContainer">
<h1>Tack för att du kontaktade oss</h1>
<p>Vi svarar dig fort vi kan.</p>
</div>
<span class="btnQuitForm">X</span>
<table class="contactTable">
<tbody>
<tr>
<!-- LEFT (CONTACT FORM) -->
<td class="contactColumn">
<div class="formResultContainer">
<h1>Tack för att du kontaktade oss</h1>
<p>Vi svarar dig fort vi kan.</p>
</div>
<div class="formInputContainer">
<table class="contactTable">
<tbody>
<tr>
<!-- LEFT (CONTACT FORM) -->
<td class="contactColumn">
<h1>Kontakta oss</h1>
<div class="formInputContainer">
<p class="contactSubtitle">Vad roligt att du är intresserad!</p>
<h1>Kontakta oss</h1>
<p class="leftAligned">Fyll i dina uppgifter, kontaktar vi dig fort som möjligt.</p>
<p class="contactSubtitle">Vad roligt att du är intresserad!</p>
<form id="formContact">
<p class="leftAligned">Fyll i dina uppgifter, kontaktar vi dig fort som möjligt.</p>
<label for="conName">Namn:</label>
<input type="text" name="name" id="conName"><br>
<form id="formContact">
<label for="conEmail">Mejladress: <span class="required">*</span></label>
<input type="email" name="email" id="conEmail" required=""><br>
<label for="conName">Namn:</label>
<input type="text" name="name" id="conName"><br>
<label for="conPhone">Telefonnummer:</label>
<input type="text" name="phone" id="conPhone"><br>
<label for="conEmail">Mejladress: <span class="required">*</span></label>
<input type="email" name="email" id="conEmail" required=""><br>
<label for="conComments">Vad vill du veta mer om: <span class="required">*</span></label>
<textarea name="comments" form="formComments" id="conComments" required=""></textarea>
<label for="conPhone">Telefonnummer:</label>
<input type="text" name="phone" id="conPhone"><br>
<div class="formBottom">
<span class="threeQuarterBread">* Obligatorisk</span>
<input type="submit" name="submit" value="Skicka">
</div>
<label for="conComments">Vad vill du veta mer om: <span class="required">*</span></label>
<textarea name="comments" form="formComments" id="conComments" required=""></textarea>
</form>
</div>
</td>
<!-- END LEFT (CONTACT FORM) -->
<div class="formBottom">
<span class="threeQuarterBread">* Obligatorisk</span>
<input type="submit" name="submit" value="Skicka">
</div>
<!-- RIGHT (CONTACT FORM) -->
<td class="contactColumn">
</form>
<div class="ourLocation">
<img id="locMap" src="../assets/img/map_location_greyscale.jpg" alt="Här finns vi">
<img id="locIcon" src="../assets/img/svg/ic_position_marker_shaded.svg" alt="">
</div>
</div>
<div class="rightAligned">
<img src="../assets/img/svg/ic_directions.svg" alt="Vägbeskrivning" class="icon">
<a href="https://www.google.com/maps/dir//Pythagoras+AB,+S%C3%B6der+M%C3%A4larstrand+27+B,+118+25+Stockholm" class="findUsSweden" target="_blank">
Vägbeskrivning
</a>
</div>
</td>
<!-- END LEFT (CONTACT FORM) -->
<p class="leftAligned">Du kan även mejla, ringa och besöka oss.</p>
<!-- RIGHT (CONTACT FORM) -->
<td class="contactColumn">
<table class="contactSummaryTable">
<tbody>
<tr>
<td>
<img src="../assets/img/svg/ic_plane.svg" class="icon">
</td>
<td>
<h3 class="h3">Mejla oss:</h3>
<a href="mailto:info@pythagoras.se">info@pythagoras.se</a>
</td>
</tr>
<tr>
<td>
<img src="../assets/img/svg/ic_mobile.svg" class="icon">
</td>
<td>
<h3 class="h3">Ring oss:</h3>
<a href="tel:+4687618090">+46-8 761 80 90</a>
</td>
</tr>
<tr>
<td>
<img src="../assets/img/svg/ic_position.svg" class="iconSmall">
</td>
<td>
<h3 class="h3">Besök oss:</h3>
<a href="https://www.google.com/maps?saddr=My+Location&amp;daddr=Pythagoras+AB,+S%C3%B6der+M%C3%A4larstrand+27+B,+118+25+Stockholm" target="_blank">Söder Mälarstrand 27B, SE-118 25<br>Stockholm, Sweden</a>
</td>
</tr>
</tbody>
</table>
<div class="ourLocation">
<img id="locMap" src="../assets/img/map_location_greyscale.jpg" alt="Här finns vi">
<img id="locIcon" src="../assets/img/svg/ic_position_marker_shaded.svg" alt="">
</div>
</td>
<!-- END RIGHT (CONTACT FORM) -->
</tr>
</tbody>
</table>
</div>
<div class="rightAligned">
<img src="../assets/img/svg/ic_directions.svg" alt="Vägbeskrivning" class="icon">
<a href="https://www.google.com/maps/dir//Pythagoras+AB,+S%C3%B6der+M%C3%A4larstrand+27+B,+118+25+Stockholm" class="findUsSweden" target="_blank">
Vägbeskrivning
</a>
</div>
<!-- SUPPORT FORM --> </div>
<p class="leftAligned">Du kan även mejla, ringa och besöka oss.</p>
<!-- USED TO GET DETECT WIDTH USING JS AND CSS MEDIA QUERIES -->
<span id="mobile_indicator"></span>
<span id="phone_indicator"></span>
<table class="contactSummaryTable">
<tbody>
<tr>
<td>
<img src="../assets/img/svg/ic_plane.svg" class="icon">
</td>
<td>
<h3 class="h3">Mejla oss:</h3>
<a href="mailto:info@pythagoras.se">info@pythagoras.se</a>
</td>
</tr>
<tr>
<td>
<img src="../assets/img/svg/ic_mobile.svg" class="icon">
</td>
<td>
<h3 class="h3">Ring oss:</h3>
<a href="tel:+4687618090">+46-8 761 80 90</a>
</td>
</tr>
<tr>
<td>
<img src="../assets/img/svg/ic_position.svg" class="iconSmall">
</td>
<td>
<h3 class="h3">Besök oss:</h3>
<a href="https://www.google.com/maps?saddr=My+Location&amp;daddr=Pythagoras+AB,+S%C3%B6der+M%C3%A4larstrand+27+B,+118+25+Stockholm" target="_blank">Söder Mälarstrand 27B, SE-118 25<br>Stockholm, Sweden</a>
</td>
</tr>
</tbody>
</table>
<!-- <div class="cookiesInfo h4">Vi använder cookies för att förbättra din upplevelse av Pythagoras hemsida. <a>Vill du veta mer?</a> <input type="button" value="Jag förstår"/></div> -->
</td>
<!-- END RIGHT (CONTACT FORM) -->
</tr>
</tbody>
</table>
</div>
</div>
<!-- SUPPORT FORM -->
</div>
<!-- USED TO GET DETECT WIDTH USING JS AND CSS MEDIA QUERIES -->
<span id="mobile_indicator"></span>
<span id="phone_indicator"></span>
<!-- <div class="cookiesInfo h4">Vi använder cookies för att förbättra din upplevelse av Pythagoras hemsida. <a>Vill du veta mer?</a> <input type="button" value="Jag förstår"/></div> -->
</div>
</div>
</template>
</template>
<script>
export default {
data() {
return {
menus: window.config.menus,
contactData: [
{ name: "地址", value: "上海市宝山区顾村" },
{ name: "手机", value: "13817819452" },
{ name: "邮箱", value: "Zhp@bimwe.com" }
],
};
}
data() {
return {
menus: window.config.menus,
contactData: [
{ name: '地址', value: '上海市宝山区顾村' },
{ name: '手机', value: '13817819452' },
{ name: '邮箱', value: 'Zhp@bimwe.com' },
],
};
},
};
</script>
<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped>
.quickLinks li {
float: left;
margin: 5px 20px;
float: left;
margin: 5px 20px;
}
</style>

View File

@@ -1,108 +1,116 @@
<template>
<div>
<div class="header bottomShadow">
<div class="content pageWidth">
<div class="top">
<div class="content bread">
<table><tbody><tr><td class="contact contactLinks">
<img src="../assets/img/svg/mobile.svg" class="inlineTextIcon inlineTextPhoneIcon"><span>
<a href="tel:13817819452">13817819452</a></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="../assets/img/svg/airplane.svg" class="inlineTextIcon">
<span><a href="mailto:bimwe@bimwe.com">bimwe@bimwe.com</a></span>
</td><td class="searchContainer desktop">
<input type="text" class="search" placeholder="Sök" style="margin-left:1em;width:10em">
</td></tr></tbody></table>
</div>
</div>
<!-- BOTTOM - DESKTOP -->
<div class="bottom desktop">
<table>
<tbody>
<tr>
<td class="logoCell">
<img class="logo" src="../assets/img/logo.png">
</td>
<td class="mainMenuCell">
<table class="mainMenu">
<tbody>
<tr>
<td class="h2" v-for="menu in menus" :key="menu.name" >
<router-link :to="menu.url">
{{menu.name}}
<span v-if="menu.child.length>0" class="downCaret"></span>
</router-link>
<div class="dropDown bottomShadowSegment" v-if="menu.child.length>0" >
<router-link :to="sonMenu.url" v-for="sonMenu in menu.child" :key="sonMenu.name">{{sonMenu.name}}</router-link>
</div>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
</div>
<!-- END BOTTOM - DESKTOP -->
<div class="header bottomShadow">
<div class="content pageWidth">
<div class="top">
<div class="content bread">
<table>
<tbody>
<tr>
<td class="contact contactLinks">
<img src="../assets/img/svg/mobile.svg" class="inlineTextIcon inlineTextPhoneIcon"><span>
<a href="tel:13817819452">13817819452</a></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="../assets/img/svg/airplane.svg" class="inlineTextIcon">
<span><a href="mailto:bimwe@bimwe.com">bimwe@bimwe.com</a></span>
</td>
<td class="searchContainer desktop">
<input type="text" class="search" placeholder="Sök" style="margin-left:1em;width:10em">
</td>
</tr>
</tbody>
</table>
</div>
</div>
<!-- BOTTOM - DESKTOP -->
<div class="bottom desktop">
<table>
<tbody>
<tr>
<td class="logoCell">
<img class="logo" src="../assets/img/logo.png">
</td>
<td class="mainMenuCell">
<table class="mainMenu">
<tbody>
<tr>
<td class="h2" v-for="menu in menus" :key="menu.name">
<router-link :to="menu.url">
{{menu.name}}
<span v-if="menu.child.length>0" class="downCaret"></span>
</router-link>
<div class="dropDown bottomShadowSegment" v-if="menu.child.length>0">
<router-link :to="sonMenu.url" v-for="sonMenu in menu.child" :key="sonMenu.name">{{sonMenu.name}}</router-link>
</div>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
</div>
<!-- END BOTTOM - DESKTOP -->
<div class="bottom headerBottom mobile">
<table>
<tbody>
<tr>
<td class="logoCell">
<img class="logo" src="../assets/img/bimwe_logo.png">
</td>
<td class="mobileIconsCell">
<!-- <img src="../assets/img/svg/ic_search.svg" /> -->
<img src="../assets/img/svg/ic_hamburger.svg" id="hamburger">
</td>
</tr>
</tbody>
</table>
</div>
</div>
<div id="mobileMenu" class="headerMobileMenu bread">
<div class="menuDummy"></div><div class="menuContent">
<ul>
<li v-for="menu in menus" :key="menu.name" >
<a href="menu.url" v-if="menu.name=='首页'" >{{menu.name}}</a>
<label v-else class="hasSubmenu" style="display:block;">{{menu.name}}</label>
<ul class="subMenu" v-if="menu.child.length>0" >
<li v-for="sonMenu in menu.child" :key="sonMenu.name" >
<router-link class="hasSubmenu" :to="sonMenu.url">{{sonMenu.name}}</router-link>
</li>
</ul>
</li>
</ul>
<div class="goBack">
<a href="JavaScript:void()" class="linkGoBack flexVerticalCenter">
<img src="../assets/img/svg/ic_arrow_back.svg" alt="返回">
<span>返回</span>
</a>
</div>
</div>
</div>
</div>
<div class="bottom headerBottom mobile">
<table>
<tbody>
<tr>
<td class="logoCell">
<img class="logo" src="../assets/img/bimwe_logo.png">
</td>
<td class="mobileIconsCell">
<!-- <img src="../assets/img/svg/ic_search.svg" /> -->
<img src="../assets/img/svg/ic_hamburger.svg" id="hamburger">
</td>
</tr>
</tbody>
</table>
</div>
</div>
<div id="mobileMenu" class="headerMobileMenu bread">
<div class="menuDummy"></div>
<div class="menuContent">
<ul>
<li v-for="menu in menus" :key="menu.name">
<a href="menu.url" v-if="menu.name=='首页'">{{menu.name}}</a>
<label v-else class="hasSubmenu" style="display:block;">{{menu.name}}</label>
<ul class="subMenu" v-if="menu.child.length>0">
<li v-for="sonMenu in menu.child" :key="sonMenu.name">
<router-link class="hasSubmenu" :to="sonMenu.url">{{sonMenu.name}}</router-link>
</li>
</ul>
</li>
</ul>
<div class="goBack">
<a href="JavaScript:void()" class="linkGoBack flexVerticalCenter">
<img src="../assets/img/svg/ic_arrow_back.svg" alt="返回">
<span>返回</span>
</a>
</div>
</div>
</div>
</div>
</div>
</template>
</template>
<script>
import { common } from "../assets/static/common";
import { common } from '../static/common';
export default {
data() {
return {
menus: window.config.menus
};
},
mounted: function() {
common.init();
common.initListeners();
common.initHeader();
common.initForms();
common.initMobileMenu();
common.adjustElementsForScreen();
}
data() {
return {
menus: window.config.menus,
};
},
mounted: function () {
common.init();
common.initListeners();
common.initHeader();
common.initForms();
common.initMobileMenu();
common.adjustElementsForScreen();
},
};
</script>

View File

@@ -1,72 +1,76 @@
<template>
<div class="contentTableLeft" id="navSidebar" v-if="!isMobile">
<div class="contentTableLeft" id="navSidebar" v-if="!isMobile">
<div id="navAccordion" class="accordion" style="opacity: 1;" >
<div class="h1"><font style="vertical-align: inherit;" v-if="curMenu"><font style="vertical-align: inherit;"> {{curMenu.name}}</font></font></div>
<div id="navAccordion" class="accordion" style="opacity: 1;">
<ul class="content" v-if="curMenu">
<li class="category" v-for=" sonmenu in curMenu.child" :key="sonmenu.name" >
<router-link :to="sonmenu.url" :class="sonmenu.strong" >
<div class="triangle"></div>
<font style="vertical-align: inherit;">
<font style="vertical-align: inherit;"> {{sonmenu.name}}</font>
</font>
</router-link>
<div class="mobileContent">
<h1 > {{sonmenu.name}}</h1>
</div>
</li>
</ul>
</div>
<div class="h1">
<font style="vertical-align: inherit;" v-if="curMenu">
<font style="vertical-align: inherit;"> {{curMenu.name}}</font>
</font>
</div>
<ul class="content" v-if="curMenu">
<li class="category" v-for=" sonmenu in curMenu.child" :key="sonmenu.name">
<router-link :to="sonmenu.url" :class="sonmenu.strong">
<div class="triangle"></div>
<font style="vertical-align: inherit;">
<font style="vertical-align: inherit;"> {{sonmenu.name}}</font>
</font>
</router-link>
<div class="mobileContent">
<h1> {{sonmenu.name}}</h1>
</div>
</li>
</ul>
</div>
</div>
</template>
<script>
import "../assets/css/content_pages.css";
import { common } from "../assets/static/common";
import '../assets/css/content_pages.css';
import { common } from '../static/common';
export default {
data() {
return {
menus: window.config.menus,
isMobile: false,
curMenu: null,
curChildMenu: null,
strong: ""
};
},
created: function() {
this.Init();
},
methods: {
Init: function() {
this.isMobile = common.isMobile();
var path = this.$route.fullPath.split("/");
data() {
return {
menus: window.config.menus,
isMobile: false,
curMenu: null,
curChildMenu: null,
strong: '',
};
},
created: function () {
this.Init();
},
methods: {
Init: function () {
this.isMobile = common.isMobile();
var path = this.$route.fullPath.split('/');
this.curMenu = this.menus.find(p => {
return p.url.indexOf(path[1]) > 0;
});
this.curMenu = this.menus.find((p) => {
return p.url.indexOf(path[1]) > 0;
});
this.curChildMenu = this.curMenu.child.find(p => {
return p.url.indexOf(path[2]) > 0;
});
this.curChildMenu = this.curMenu.child.find((p) => {
return p.url.indexOf(path[2]) > 0;
});
this.curMenu.child.map(p => {
p.strong = "categoryHead h2 linkProduct";
if (p.url.indexOf(path[2]) > 0) {
this.curChildMenu.strong = "categoryHead h2 linkProduct strong";
}
});
}
}
this.curMenu.child.map((p) => {
p.strong = 'categoryHead h2 linkProduct';
if (p.url.indexOf(path[2]) > 0) {
this.curChildMenu.strong =
'categoryHead h2 linkProduct strong';
}
});
},
},
};
</script>
<style scoped>
.contentTableLeft {
display: table;
float: left;
display: table;
float: left;
}
</style>

View File

@@ -1,21 +1,15 @@
import './assets/css/cookieconsent.min.css'
import './assets/css/common.css'
import 'swiper/dist/css/swiper.css'
import './assets/static/config.js'
import './assets/static/jquery.js'
import './assets/static/common.js'
import './static/config.js'
import 'es6-promise/auto'
import Vue from 'vue'
import App from './App.vue'
import Vuex from 'vuex'
import router from './router'
import {component} from './component'
import { component } from './component'
Vue.config.productionTip = false;
@@ -26,6 +20,6 @@ component.register();
new Vue({
router,
render: h => h(App)
}).$mount('#app')
router,
render: h => h(App),
}).$mount('#app')

381
src/static/common.js Normal file
View File

@@ -0,0 +1,381 @@
var isMobile = null;
var wasMobile = isMobile;
var isMiniHeader = false;
import $ from 'jquery'
class Common {
constructor(name, age) {
this.name = name;
this.age = age;
}
init() {
var self = this;
isMobile = common.isMobile();
//create trigger to resizeEnd event, called after event is finished
$(window).resize(function() {
if (this.resizeTO) clearTimeout(this.resizeTO);
this.resizeTO = setTimeout(function() {
$(this).trigger('resizeEnd');
}, 100);
});
//cdetermine scren type and call style functions after window resize is completed
$(window).on('resizeEnd', function() {
self.adjustElementsForScreen();
});
$(window).scroll(function() {
if ($(window).scrollTop() > 200) {
if (isMiniHeader === false && !self.isMobile()) {
$('.header').addClass('mini');
isMiniHeader = true;
}
} else {
if (isMiniHeader === true) {
$('.header').removeClass('mini');
isMiniHeader = false;
}
}
//var scroll = $(window).scrollTop();
});
$.scrollToElement = function($element) {
var adjustment = 0;
if (isMiniHeader) {
adjustment = 35;
}
var $header = $('.header:first');
$('html,body').animate({ scrollTop: $element.offset().top - ($header.length > 0 ? $header.height() : 0) - adjustment }, 'slow');
};
}
adjustElementsForScreen() {
isMobile = this.isMobile();
if (!this.isMobile()) {
$(".mobileContent").hide();
}
if (isMobile) wasMobile = true;
if (wasMobile && !isMobile) location.reload();
if (isMobile && isMiniHeader === true) {
$('.header').removeClass('mini');
isMiniHeader = false;
}
this.adjustContentBannersForScreen();
}
initHeader() {
//go to main page if not there on logo click
$(".logoCell .logo").on("click", function() {
if (window.location.href.indexOf("index") === -1) {
window.location.href = "#/index";
}
});
//show/hide main menu dropdowns on hover
$(".mainMenu > tbody > tr > td")
.on("mouseenter", function(e) {
e.stopPropagation();
$(".dropDown").hide();
$("table.mainMenu > tbody > tr > td.selected").css("box-shadow", "none");
$(this).find(".dropDown").addClass("droppedDown");
$(this).find(".dropDown").slideDown();
})
.on("mouseleave", function(e) {
e.stopPropagation();
$(this).find(".dropDown").removeClass("droppedDown");
$(this).find(".dropDown").hide();
$("table.mainMenu > tbody > tr > td.selected").css("box-shadow", "0 -3px 0 #ff0000 inset");
});
}
initListeners() {
$("#hamburger").on("click", function() {
if ($("#mobileLanguageMenu").hasClass("showing")) {
$("#mobileLanguageMenu").hide();
$("#mobileLanguageMenu").removeClass("showing");
}
if ($("#mobileMenu").hasClass("showing")) {
common.hideMobileMenu();
} else {
common.showMobileMenu();
}
});
$("#mobileLanguage").on("click", function() {
if ($("#mobileMenu").hasClass("showing")) {
$("#mobileMenu").hide();
$("#mobileMenu").removeClass("showing");
}
if (!$("#mobileLanguageMenu").hasClass("showing")) {
common.showMobileLanguageMenu();
}
});
$("#screenOverlayBehindHeader, .linkGoBack").on("click", function() {
if ($("#mobileMenu").hasClass("showing")) {
common.hideMobileMenu();
}
if ($("#mobileLanguageMenu").hasClass("showing")) {
common.hideMobileLanguageMenu();
}
});
$("#mobileLanguageMenu a").on("click", function(e) {
e.preventDefault();
});
//show support form
$("a.linkSupport").on("click", function(e) {
e.preventDefault();
common.showForm("support");
});
//show contact form
$("a.linkContactUs").on("click", function(e) {
e.preventDefault();
common.showForm("contact");
});
$("#scrollToBoxes").on("click", function(e) {
e.preventDefault();
$.scrollToElement($("#pageBoxesContainer"));
});
$('.cookiesInfo').children('input[type=button]').on('click', function() {
$(this).parent().remove();
});
}
initMobileMenu() {
$("#mobileMenu label").on("click", function(e) {
e.preventDefault();
$("#mobileMenu .subMenu").not($(this).siblings()).slideUp();
$(".hasSubmenu").not($(this)).css("font-weight", "normal");
$(this).css("font-weight", "bold");
//$(this).parent().css("border-bottom", "none");
$(this).parent().find(".subMenu").slideDown();
});
$("#mobileMenu a").on("click", function() {
common.hideMobileMenu();
});
}
initForms() {
$(".btnQuitForm").on("click", function() {
$("#forms").hide();
$("#screenOverlay").hide();
$("#formContactContainer").hide();
$("#formSupportContainer").hide();
});
$("#formSupport").on("submit", function(e) {
e.preventDefault();
common.submitSupportForm($(this));
});
$("#formContact").on("submit", function(e) {
e.preventDefault();
common.submitContactForm($(this));
});
}
showForm(formName) {
$("#forms").show();
$("#screenOverlay").show();
$(".contactTable").show();
$(".formInputContainer").show();
$(".formResultContainer").hide();
if (formName === "contact") {
var $conCommentsTitle = $("label[for='conComments']");
if ($(".contentTableRight").find("[data-contact-link]").length) {
$conCommentsTitle.html("Berätta vad du vill veta mer om gällande " +
$(".contentTableRight").find("[data-contact-link]").data("contact-link") + ": *");
} else {
$conCommentsTitle.html("Vad vill du veta mer om: ");
}
$("#formContactContainer").show();
} else if (formName === "support") {
$("#formSupportContainer").show();
}
common.scrollToTop();
}
submitSupportForm() {
$.post("http://biz199.inmotionhosting.com/~rustyt6/pythagoras/php/submit_support_form.php", {
subject: $("#supSubject").val(),
company: $("#supCompany").val(),
name: $("#supName").val(),
email: $("#supEmail").val(),
phone: $("#supPhone").val(),
product: $("#supProduct").val(),
comments: $("#supComments").val()
},
function(data) {
console.log(data);
}
);
$(".formInputContainer").hide();
$(".formResultContainer").show();
common.scrollToTop();
$("#supSubject").val("");
$("#supCompany").val("");
$("#supName").val("");
$("#supEmail").val("");
$("#supPhone").val("");
$("#supProduct").val("");
$("#supComments").val("");
}
submitContactForm() {
$.post("http://biz199.inmotionhosting.com/~rustyt6/pythagoras/php/submit_contact_form.php", {
name: $("#conName").val(),
email: $("#conEmail").val(),
phone: $("#conPhone").val(),
comments: $("#conComments").val()
},
function(data) {
console.log(data);
}
);
$(".contactTable").hide();
$(".formResultContainer").show();
common.scrollToTop();
$("#conName").val("");
$("#conEmail").val("");
$("#conPhone").val("");
$("#conComments").val("");
}
adjustContentBannersForScreen() {
if (this.isMobile()) {
$("#pageBannerImage1").attr("src", "images/banner_page_mobile_solutions_mobile.jpg");
$("#pageBannerImage2").attr("src", "images/banner_page_ifrs16_mobile.jpg");
$("#pageBannerImage3").attr("src", "images/banner_page_gdpr_mobile.jpg");
} else {
$("#pageBannerImage1").attr("src", "images/banner_page_mobile_solutions.jpg");
$("#pageBannerImage2").attr("src", "images/banner_page_ifrs16.jpg");
$("#pageBannerImage3").attr("src", "images/banner_page_gdpr.jpg");
}
}
showMobileMenu() {
$("#screenOverlayBehindHeader").show();
$("#mobileMenu").slideDown();
$("#mobileMenu").addClass("showing");
}
hideMobileMenu() {
$("#mobileMenu").slideUp(function() {
$("#screenOverlayBehindHeader").hide();
});
$("#mobileMenu").removeClass("showing");
}
showMobileLanguageMenu() {
$("#screenOverlayBehindHeader").show();
$("#mobileLanguageMenu").slideDown();
$("#mobileLanguageMenu").addClass("showing");
}
hideMobileLanguageMenu() {
$("#mobileLanguageMenu").slideUp(function() {
$("#screenOverlayBehindHeader").hide();
});
$("#mobileLanguageMenu").removeClass("showing");
}
scrollToTop() {
$("body,html").animate({ scrollTop: 0 }, "slow");
}
isMobile() {
var ua = navigator.userAgent;
var ipad = ua.match(/(iPad).*OS\s([\d_]+)/),
isIphone = !ipad && ua.match(/(iPhone\sOS)\s([\d_]+)/),
isAndroid = ua.match(/(Android)\s+([\d.]+)/),
isMobile = isIphone || isAndroid;
return isMobile;
}
isPhone() {
var ua = navigator.userAgent;
var ipad = ua.match(/(iPad).*OS\s([\d_]+)/);
var isIphone = !ipad && ua.match(/(iPhone\sOS)\s([\d_]+)/);
return isIphone;
}
}
export const common = new Common();

View File

@@ -8,19 +8,15 @@ window.config = {
name: "我们的方案",
url: "/ourPlan",
child: [{
name: "设施管理",
url: "/ourPlan/facilityManagement",
},
{
name: "房地产",
name: "三维展示",
url: "/ourPlan/reaEstate",
},
{
name: "物业管理",
name: "房地产和物业管理",
url: "/ourPlan/estateManagement",
},
{
name: "系统智能建筑和物联网iot",
name: "物联网iot",
url: "/ourPlan/iot",
},
{

View File

@@ -1,37 +1,24 @@
<template>
<div >
<leftMenu > </leftMenu>
<icontent>
<div class="row left">
<div class="col-md-12">
<div class="col-md-5 col-sm-5 scrollpoint sp-effect1" style="padding:0px;">
<div class="form-group cav_contact_hello" style="text-align:left;">
<p class="nav_div"><label style="font-family:'Microsoft YaHei';font-weight:100;">您好</label><label style="font-family:'Microsoft YaHei';font-weight:100;"> &nbsp;&nbsp;HELLO!</label></p>
</div>
<div class="form-group cav_contact_div1" style="text-align:left">
感谢您来到上海丙维科技有限公司若您有合作意向请您用以下方式联系我们我们为您提供真诚的服务谢谢
</div>
</div>
<div class="col-md-6 col-sm-6 ">
<ul class="cav_contact_ul">
<li style="padding-top:12px;">021-61166770</li>
<li style="padding-top:19px;">bimwe@bimwe.com</li>
<li style="padding-top:21px;">
上海市宝山区逸仙路
</li>
</ul>
</div>
</div>
</div>
<div>
<leftMenu> </leftMenu>
<icontent>
<h3 data-v-7630ff5e="" data-v-41de0e1c=""> 我们是谁</h3>
<p data-v-7630ff5e="" data-v-41de0e1c="">
我们是一家员工所有的公司其业务围绕着许多核心价值观可持续性平等和合作是其中的一部分我们业务的很大一部分是基于与客户共同寻找创新解决方案使客户能够降低能耗我们有很多技巧通过将我们的技能与客户技能相结合我们帮助客户简化其物业房地产和设施管理流程
</p>
<h3 data-v-7630ff5e="" data-v-41de0e1c="">我们做什么</h3>
<p data-v-7630ff5e="" data-v-41de0e1c="">
我们开发IT解决方案和服务用于管理房地产房地产和设施管理中的战略信息我们还在智能建筑和物业及设施管理领域从事商业咨询借助最新技术我们可以创建解决方案和平台帮助客户将其业务数字化
</p>
<h3 data-v-7630ff5e="" data-v-41de0e1c="">
我们的愿景和经营理念
</h3>
<p data-v-7630ff5e="" data-v-41de0e1c="">
我们将在物业房地产和设施管理方面提供最好的服务和解决方案我们决心拥有传统和保守的部门以了解持续和自动数据收集和分析的必要性
<div class="row right">
<img width="100%" src="http://api.map.baidu.com/staticimage/v2?ak=y2qrobvV7OiT0P5FuoOXzvr1NzRbKPEE&mcode=666666&center=121.425276,31.438629&zoom=13 " />
</div>
</p>
</icontent>
</icontent>
</div>
@@ -39,45 +26,45 @@
<script>
export default {
data() {
return {};
},
mounted: function() {}
data() {
return {};
},
mounted: function () {},
};
</script>
<style scoped>
.nav_div {
font-size: 25px;
color: #333333;
font-size: 25px;
color: #333333;
}
.cav_contact_div1 {
margin-bottom: 40px;
font-size: 14px;
line-height: 28px;
text-align: left;
margin-bottom: 40px;
font-size: 14px;
line-height: 28px;
text-align: left;
}
.left {
display: inline-block;
vertical-align: top;
width: 60%;
display: inline-block;
vertical-align: top;
width: 60%;
}
.right {
position: left;
display: inline-block;
margin: 1em;
width: 35%;
vertical-align: top;
position: left;
display: inline-block;
margin: 1em;
width: 35%;
vertical-align: top;
}
.cav_contact_ul > li {
list-style: none;
padding-top: 14px;
font-family: "Microsoft YaHei";
font-size: 14px;
color: #333333;
list-style: none;
padding-top: 14px;
font-family: 'Microsoft YaHei';
font-size: 14px;
color: #333333;
}
</style>

View File

@@ -1,24 +1,22 @@
<template>
<div>
<leftMenu > </leftMenu>
<icontent>
</icontent>
<leftMenu> </leftMenu>
<icontent>
<p> 丙维科技一直致力于成为一个有吸引力的雇主</p>
<p> 我们是一家信奉环境和性别平等的公司有了我们您始终有机会成长和发展我们一直在寻找新员工如果您有兴趣加入我们的团队请随时与我们联系</p>
</icontent>
</div>
</template>
<script>
export default {
data() {
return {};
},
mounted: function() {
}
data() {
return {};
},
mounted: function () {},
};
</script>
<style scoped>
</style>

View File

@@ -1,20 +1,24 @@
<template>
<div>
<leftMenu> </leftMenu>
<icontent></icontent>
<leftMenu> </leftMenu>
<icontent>
<p> 我们的解决方案是比亚迪解决方案自带设备解决方案</p>
<p> 我们开发了可用于管理设施管理中日常工作的应用程序</p>
<p> 通过我们的解决方案您可以随时随地履行职责</p>
</icontent>
</div>
</template>
<script>
export default {
data() {
return {
};
}
data() {
return {};
},
};
</script>

View File

@@ -1,19 +1,16 @@
<template>
<div>
<leftMenu> </leftMenu>
<icontent></icontent>
<leftMenu> </leftMenu>
<icontent></icontent>
</div>
</template>
<script>
export default {
data() {
return {
};
}
data() {
return {};
},
};
</script>

View File

@@ -1,128 +1,110 @@
<template>
<div>
<ihead></ihead>
<div class="banner">
<swiper ref="swiper" :options="swiperOption" >
<swiper-slide v-for="banner in banners" :key="banner.img" >
<img :src="banner.img" width="100%" />
<div class="carousel">
<div class="infoBoxes">
<div class="infoBox fromLeft" >
<div class="infoBoxContent">
<div class="infoBoxHead">
<span class="triangleRight"></span>
<span class="infoBoxTitle"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">IFRS16</font></font></span>
</div>
<div class="bread"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">自2019年1月1日起IFRS16成为强制性要求</font><font style="vertical-align: inherit;">我们准备好了</font><font style="vertical-align: inherit;">是吗</font></font></div>
<div class="seeMoreContainer">
<a href="javascript:void()" class="linkSeeMore"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">看到更多</font></font></a>
</div>
</div>
</div>
<ihead></ihead>
<div class="banner">
<swiper ref="swiper" :options="swiperOption">
<swiper-slide v-for="banner in banners" :key="banner.img">
<img :src="banner.img" width="100%" />
</swiper-slide>
<div class="directionControl swiper-button-prev" slot="button-prev"> </div>
<div class="directionControl swiper-button-next" slot="button-next"> </div>
<div class="swiper-pagination" slot="pagination"> </div>
</swiper>
</div>
</div>
</swiper-slide>
<div class="directionControl swiper-button-prev" slot="button-prev"> </div>
<div class="directionControl swiper-button-next" slot="button-next" > </div>
<div class="swiper-pagination" slot="pagination"> </div>
</swiper>
<div class="scrollToContentWrapper">
<a href="javascript:void(0)" id="scrollToBoxes" class="scrollToContent bottomShadowSegmentLight">
<img src="../assets/img/svg/ic_caret.svg" alt="">
</a>
</div>
</div>
<div id="pageBoxesContainer" class="page pageBoxes">
<div class="scrollToContentWrapper">
<a href="javascript:void(0)" id="scrollToBoxes" class="scrollToContent bottomShadowSegmentLight">
<img src="../assets/img/svg/ic_caret.svg" alt="">
</a>
</div>
<div id="pageBoxesContainer" class="page pageBoxes">
<div class="box" v-for="product in productData" :key="product.name" >
<img width="100%" :src="product.img"/>
<div class="boxTableHeader">
<div class="h2">{{product.name}}</div>
</div>
<router-link :to="product.url"> </router-link>
</div>
</div>
<ifooter></ifooter>
<div class="box" v-for="product in productData" :key="product.name">
<img width="100%" :src="product.img" />
<div class="boxTableHeader">
<div class="h2">{{product.name}}</div>
</div>
<a v-if="product.isLink||product.url.indexOf('http')>-1" target="view_window" :href="product.url"></a>
<router-link v-else :to="product.url"> </router-link>
</div>
</div>
<ifooter></ifooter>
</div>
</template>
<script>
export default {
data() {
return {
swiperOption: {
autoplay: 2000,
speed: 1000,
loop:true,
navigation: {
nextEl: ".swiper-button-next", //前进按钮的css选择器或HTML元素。
prevEl: ".swiper-button-prev" //后退按钮的css选择器或HTML元素。
},
pagination: {
el: ".swiper-pagination",
type: "bullets",
bulletElement: "li",
clickable: true
}
},
banners: [
{ img: require("../assets/img/banner_index0.png") },
{ img: require("../assets/img/banner_index1.png") },
{ img: require("../assets/img/banner_index2.png") },
{ img: require("../assets/img/banner_index3.png") }
],
productData: [
{
name: "设施管理",
img: require("../assets/img/boxbg_facilitiesmanagement.png"),
url: ""
},
{
name: "房地产",
// img: require("../assets/img/boxbg_propertyandrealestate.jpg"),
img: require("../assets/img/boxbg_errands.png"),
url: ""
},
{
name: "智能建筑",
img: require("../assets/img/boxbg_smartbuildings.png"),
url: ""
},
{
name: "清洁管理",
img: require("../assets/img/boxbg_cleaning.png"),
url: ""
},
{
name: "建筑系统",
img: require("../assets/img/boxbg_propertyandrealestate.png"),
url: ""
},
{ name: "物联网", img: require("../assets/img/boxbg_iot.png"), url: "" }
]
};
},
data() {
return {
swiperOption: {
autoplay: 2000,
speed: 1000,
loop: true,
navigation: {
nextEl: '.swiper-button-next', //前进按钮的css选择器或HTML元素。
prevEl: '.swiper-button-prev', //后退按钮的css选择器或HTML元素。
},
pagination: {
el: '.swiper-pagination',
type: 'bullets',
bulletElement: 'li',
clickable: true,
},
},
banners: [
{ img: require('../assets/img/banner_index0.png') },
{ img: require('../assets/img/banner_index1.png') },
{ img: require('../assets/img/banner_index2.png') },
{ img: require('../assets/img/banner_index3.png') },
],
productData: [
{
name: '智能终端',
img: require('../assets/img/boxbg_cleaning.png'),
url: '/超广角设备.pdf',
isLink: true,
},
{
name: '智能建筑',
img: require('../assets/img/boxbg_smartbuildings.png'),
url: '/IntelligentBuild',
},
methods: {
onSlideChangeStart(currentPage) {
{
name: '物联网',
img: require('../assets/img/boxbg_iot.png'),
url: '/ourPlan/iot',
},
{
name: '模型管理',
img: require('../assets/img/boxbg_facilitiesmanagement.png'),
url: 'http://mor.bimwe.com/',
},
{
name: '三维展示',
img: require('../assets/img/boxbg_errands.png'),
url: '/ourPlan/reaEstate',
},
{
name: '智慧系统',
img: require('../assets/img/boxbg_propertyandrealestate.png'),
url: 'http://soda.bimwe.com/',
},
],
};
},
onSlideChangeEnd(currentPage) {
}
}
methods: {},
};
</script>
<style scoped>
.swiper-pagination
{
bottom: 10%;
.swiper-pagination {
bottom: 10%;
}
</style>

View File

@@ -1,19 +1,22 @@
<template>
<div>
<leftMenu> </leftMenu>
<icontent></icontent>
<leftMenu> </leftMenu>
<icontent>
<p> 房地产和物业是涵盖多个学科的专业旨在确保建筑环境的功能这是通过将人员地点流程和技术相互整合来实现的</p>
<p> 无论您是购买出售租赁还是翻新您的房产我们的解决方案都可以帮助您根据显示趋势和实时数据的当前图形关键指标做出明智的决策</p>
<p> 在我们的解决方案中所有功能都完全集成在一起但也可以单独使用</p>
</icontent>
</div>
</template>
<script>
export default {
data() {
return {
};
}
data() {
return {};
},
};
</script>

View File

@@ -1,19 +1,18 @@
<template>
<div>
<leftMenu> </leftMenu>
<icontent></icontent>
<leftMenu> </leftMenu>
<icontent></icontent>
</div>
</template>
<script>
export default {
data() {
return {
msg: "Welcome to Your Vue.js App"
};
}
data() {
return {
msg: 'Welcome to Your Vue.js App',
};
},
};
</script>

View File

@@ -1,21 +1,26 @@
<template>
<div>
<leftMenu> </leftMenu>
<icontent></icontent>
</div>
<leftMenu> </leftMenu>
<icontent>
<p>
<img src="../../assets/img/iot1.jpg" style="width:100%" />
</p>
<p>
<img src="../../assets/img/iot1.jpg" style="width:100%" />
</p>
</icontent>
</div>
</template>
<script>
export default {
data() {
return {
msg: "Welcome to Your Vue.js App"
};
},
mounted: function() {
debugger;
}
data() {
return {
msg: 'Welcome to Your Vue.js App',
};
},
mounted() {},
};
</script>

View File

@@ -1,24 +1,23 @@
<template>
<div>
<ihead></ihead>
<div class="contentPage">
<ihead></ihead>
<div class="contentPage">
<div class="contentTable">
<router-view></router-view>
</div>
</div>
<ifooter></ifooter>
<div class="contentTable">
<router-view></router-view>
</div>
</div>
<ifooter></ifooter>
</div>
</template>
<script>
export default {
data() {
return {
msg: "Welcome to Your Vue.js App"
};
}
data() {
return {
msg: 'Welcome to Your Vue.js App',
};
},
};
</script>

View File

@@ -1,20 +1,25 @@
<template>
<div>
<leftMenu> </leftMenu>
<icontent></icontent>
<leftMenu> </leftMenu>
<icontent>
<video class="video" controls="controls" autoplay="autoplay">
<source src="/三维.mp4" type="video/mp4" />
Your browser does not support the video tag.
</video>
</icontent>
</div>
</template>
<script>
export default {
data() {
return {
msg: "Welcome to Your Vue.js App"
};
}
data() {
return {};
},
};
</script>
<style scoped>
</style>
<style scoped>
.video {
width: 100%;
}
</style>

View File

@@ -1,18 +1,20 @@
<template>
<div>
<leftMenu> </leftMenu>
<icontent></icontent>
</div>
<leftMenu> </leftMenu>
<icontent>
<p> 我们所有的解决方案都基于最新技术完全基于云的SaaS服务为了传递数据和图形可以对所有类型的系统进行基于Web服务的集成</p>
<p> 我们强大的移动应用程序使用我们的GeoModel来可视化图形有关我们的GeoModel的更多信息请参阅智能建筑和物联网这一点</p>
</icontent>
</div>
</template>
<script>
export default {
data() {
return {
msg: "Welcome to Your Vue.js App"
};
}
data() {
return {
msg: 'Welcome to Your Vue.js App',
};
},
};
</script>