goto.js 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434
  1. $(".popular").hide();
  2. $(document).on("click", ".likeSee__state__filter--item", function (event) {
  3. $(".CaseNews").toggle();
  4. $(".popular").toggle();
  5. $(".likeSee__state__filter--item").removeClass('active');
  6. $(this).addClass("active");
  7. });
  8. const urlParams = new URLSearchParams(window.location.search);
  9. let id = urlParams.get('cid');
  10. console.log(id);
  11. function get_data() {
  12. // var desid2=String(desid);
  13. // console.log(desid2);
  14. // $("#version").val(desid);
  15. // $("#version").html(desid);
  16. $.ajax({
  17. method: "GET",
  18. url: `json/cases-${id}.json`,
  19. dataType: "json",
  20. })
  21. .done(function (msg) {
  22. console.log(msg);
  23. let designersinfo = "";
  24. let CaseInfo = "";
  25. let CaseTag = "";
  26. let CaseData = "";
  27. let CaseNews = "";
  28. let CasePopular = "";
  29. let CaseDetail = "";
  30. for (let i = 0; i < msg.length; i++) {
  31. designersinfo = `
  32. <div class="container container-width-column px-md-0">
  33. <div class="article__wrapper">
  34. <h2 class="h4">${msg[i].Casetitle}</h2>
  35. <div class="d-flex justify-content-between">
  36. <div class="small">${msg[i].CaseTeamName} | 圖片提供:${msg[i].CaseCompany}</div>
  37. <div class="small">${msg[i].CaseDate}| 人氣:${msg[i].CaseViews}</div>
  38. </div>
  39. </div>
  40. </div>`
  41. CaseInfo = `
  42. <div class="row mx-0 justify-content-around align-items-center">
  43. <div class="col-md-3 px-mx-0">
  44. <div class="info__items border-end">
  45. <div>
  46. <div class="info__items__title">風格</div>
  47. <div class="info__items--ellipse">${msg[i].CaseStyle}</div>
  48. </div>
  49. </div>
  50. </div>
  51. <div class="col-md-3 px-mx-0">
  52. <div class="info__items border-end">
  53. <div>
  54. <div class="info__items__title">格局</div>
  55. <div class="info__items--ellipse">${msg[i].CaseHouse}</div>
  56. </div>
  57. </div>
  58. </div>
  59. <div class="col-md-3 px-mx-0">
  60. <div class="info__items border-end">
  61. <div>
  62. <div class="info__items__title">坪數</div>
  63. <div class="info__items--ellipse">${msg[i].CaseSize}</div>
  64. </div>
  65. </div>
  66. </div>
  67. <div class="col-md-3 px-mx-0">
  68. <div class="info__items">
  69. <div>
  70. <div class="info__items__title">預算</div>
  71. <div class="info__items--ellipse">${msg[i].CaseProject}</div>
  72. </div>
  73. </div>
  74. </div>
  75. </div>`
  76. for (let j = 0; j < msg[i].CaseTag.length; j++) {
  77. // console.log(msg[i].CaseTag.length);
  78. // console.log(msg[i].CaseTag[j].Tag);
  79. CaseTag += ' \
  80. <a href="" class="btn btn-outline-custom rounded-0">'+ msg[i].CaseTag[j].Tag + '</a> \
  81. ';
  82. }
  83. CaseData = `
  84. <h4 class="d-none d-md-block">CASE DATA</h4>
  85. <div class="caseData__infoItems">
  86. <div class="caseData__infoItems__list">
  87. <div class="caseData__infoItems__list--lf">居住成員:</div>
  88. <div class="caseData__infoItems__list--rt">${msg[i].CaseDataMember} </div>
  89. </div>
  90. <div class="caseData__infoItems__list">
  91. <div class="caseData__infoItems__list--lf">房屋坪數:</div>
  92. <div class="caseData__infoItems__list--rt">${msg[i].CaseDataSize}</div>
  93. </div>
  94. <div class="caseData__infoItems__list">
  95. <div class="caseData__infoItems__list--lf">設計風格:</div>
  96. <div class="caseData__infoItems__list--rt">${msg[i].CaseDataStyle}</div>
  97. </div>
  98. <div class="caseData__infoItems__list">
  99. <div class="caseData__infoItems__list--lf">房屋類型:</div>
  100. <div class="caseData__infoItems__list--rt">${msg[i].CaseDataType}</div>
  101. </div>
  102. <div class="caseData__infoItems__list">
  103. <div class="caseData__infoItems__list--lf">房屋狀況:</div>
  104. <div class="caseData__infoItems__list--rt">${msg[i].CaseDataSituation}</div>
  105. </div>
  106. <div class="caseData__infoItems__list">
  107. <div class="caseData__infoItems__list--lf">圖片提供:</div>
  108. <div class="caseData__infoItems__list--rt">${msg[i].CaseDataImgProvide}</div>
  109. </div>
  110. <div class="caseData__infoItems__list">
  111. <div class="caseData__infoItems__list--lf">空間格局:</div>
  112. <div class="caseData__infoItems__list--rt">${msg[i].CaseDataSpace}</div>
  113. </div>
  114. <div class="caseData__infoItems__list">
  115. <div class="caseData__infoItems__list--lf">主要建材:</div>
  116. <div class="caseData__infoItems__list--rt">${msg[i].CaseDataMaterial}</div>
  117. </div>
  118. </div> `
  119. CaseData2 = `
  120. <div class="caseData__designerBlock h-100">
  121. <div class="caseData__designerBlock__designer d-block d-md-none">
  122. <h4>聯絡設計師</h4>
  123. <ul>
  124. <li><a itemprop="item" href="/designer-index.php?designer_id=779"
  125. target="_blank">${msg[i].CaseCompany}</a></li>
  126. <li><a itemprop="item" href="/designer-index.php?designer_id=779"
  127. target="_blank">${msg[i].CaseTeamName} 設計師</a></li>
  128. <li>免付費諮詢專線</li>
  129. <li><a href="tel:${msg[i].ContactFreeTel}" class="tel">${msg[i].ContactFreeTel}</a></li>
  130. </ul>
  131. </div>
  132. <div class="caseData__designerBlock__designer--pc d-none d-md-block">
  133. <div class="caseData__designerBlock__designer--above">
  134. <h4>聯絡設計師</h4>
  135. <ul>
  136. <li><a href="" target="_blank">${msg[i].CaseCompany}</a></li>
  137. <li><a href="" target="_blank">${msg[i].CaseTeamName} 設計師</a></li>
  138. </ul>
  139. </div>
  140. <div class="caseData__designerBlock__designer--below">
  141. <ul>
  142. <li>
  143. 免付費諮詢專線
  144. </li>
  145. <li>
  146. <a href="tel:${msg[i].ContactFreeTel}" class="tel">${msg[i].ContactFreeTel}</a>
  147. </li>
  148. </ul>
  149. </div>
  150. </div>
  151. <div class="caseData__designerBlock__avatar">
  152. <a href="">
  153. <div class="caseData__designerBlock__avatar--img"
  154. style="background-image:url(${msg[i].ContactDesignerImg});">
  155. </div>
  156. </a>
  157. </div>
  158. </div>`
  159. for (var k = 0; k < msg[i].ProfileRecently.length; k++) {
  160. CaseNews +=
  161. '\<div class="col-md-4 ps-0"\
  162. <div class="vue-waterfall-slot">\
  163. <div class="card CaseNews-Card">\
  164. <a href="'+ msg[i].ProfileRecently[k].ProfileLink + '">\
  165. <img class="img-fluid"\
  166. src="'+ msg[i].ProfileRecently[k].ProfileImg + '"\
  167. alt="幸福空間個案圖" class="card-img-top">\
  168. </a>\
  169. </div>'
  170. CaseNews += '<div class="card-body">'
  171. for (var z = 0; z < msg[i].ProfileRecently[k].ProfileTag.length; z++) {
  172. // console.log(msg[i].ProfileRecently[k].ProfileTag.length)
  173. CaseNews += '\
  174. <a href="">\
  175. '+ msg[i].ProfileRecently[k].ProfileTag[z].Tag + '\
  176. </a>\
  177. ';
  178. }
  179. CaseNews += '</div></div></div></div>'
  180. };
  181. for (var x = 0; x < msg[i].ProfilePopularity.length; x++) {
  182. CasePopular +=
  183. '<div class="likeSee__rule"\
  184. <a href="'+ msg[i].ProfilePopularity[x].ProfileLink + '">\
  185. <div class="likeSee__bgImg">\
  186. <img class="img-fluid" src="'+ msg[i].ProfilePopularity[x].ProfileImg + '" alt="幸福空間個案圖" class="card-img-top">\
  187. </div>\
  188. </a>'
  189. CasePopular += '<div class="likeSee__tag">'
  190. for (var y = 0; y < msg[i].ProfilePopularity[x].ProfileTag.length; y++) {
  191. // console.log(msg[i].ProfileRecently[k].ProfileTag.length)
  192. CasePopular += '\
  193. <a href="'+ msg[i].ProfilePopularity[x].ProfileTag[y].TagLink + '" class="likeSee__tag--item">\
  194. '+ msg[i].ProfilePopularity[x].ProfileTag[y].Tag + '\
  195. </a>\
  196. ';
  197. }
  198. CasePopular += '</div></div>'
  199. };
  200. // 個案細節
  201. CaseDetail += '<div class="row px-0 mx-0">'
  202. CaseDetail +=
  203. // 輪播圖
  204. ' <div class="col-md-8">\
  205. <div style="position: sticky; top:0px;">\
  206. <img class="img-fluid" src="https://cloud.hhh.com.tw/upload/_hcase_img/name_14151_20211230150527.jpg" alt="">\
  207. </div>\
  208. </div>'
  209. CaseDetail +=
  210. '<div class="col-md-4">\
  211. <div class="d-flex justify-content-start align-items-center pt-5">\
  212. <a href="">\
  213. <div class="contact-section-avatar me-2">\
  214. <img class="img-fluid" src="'+ msg[i].ContactDesignerImg + '" alt="">\
  215. </div>\
  216. </a>\
  217. <div class="ms-2" style="width: 100%;">\
  218. <a href="" class="contact-section-company">\
  219. <div>\
  220. '+ msg[i].CaseCompany + '\
  221. </div>\
  222. </a>\
  223. <div style="display: flex;" class="contact-section-detail-box mt-3">\
  224. <div class="contact-section-detail-lf">\
  225. <div><i aria-hidden="true" class="fa fa-phone"></i></div>\
  226. </div>\
  227. <div class="contact-section-detail-rt">\
  228. <div><a href="tel:'+ msg[i].ContactFreeTel + '">免付費 ' + msg[i].ContactFreeTel + '</a></div>\
  229. </div>\
  230. </div>\
  231. </div>\
  232. </div>\
  233. '
  234. CaseDetail +=
  235. '<div class="info-area-title-desktop">\
  236. <a href="'+ msg[i].CasePageLink + '" target="_blank">\
  237. '+ msg[i].Casetitle + '\
  238. </a>\
  239. </div>\
  240. <div class="divider"></div>\
  241. '
  242. CaseDetail +=
  243. '<div class="info-area-other-case-desktop py-3">\
  244. <div class="ml-1">該個案的其他圖片(<span id="index">5</span>/8)</div>\
  245. <div class="other-case-desktop-items d-flex flex-wrap">\
  246. '
  247. for (let j = 0; j < msg[i].CaseDetail.length; j++) {
  248. CaseDetail +=
  249. '<div id="img-0" class="w-20 m-1 p-1 img_all">\
  250. <a>\
  251. <img src=" '+ msg[i].CaseDetail[j].CaseDetailImg+ '" width="70" height="70" alt="該個案的其他圖片">\
  252. </a>\
  253. </div>'
  254. };
  255. CaseDetail += '</div></div>';
  256. CaseDetail += '<div class="divider"></div>';
  257. CaseDetail +=
  258. '<div class="info-area-same-case-desktop py-3">\
  259. <div class="ml-1"><span>工業風</span> 其他作品</div>\
  260. <div class="same-case-desktop-items d-flex flex-wrap">\
  261. '
  262. for (let j = 0; j < msg[i].OtherStylePortfolio.length; j++) {
  263. CaseDetail +=
  264. '<div class="w-20 m-1 p-1 ">\
  265. <a href="'+ msg[i].OtherStylePortfolio[j].PortfoliolLink + '">\
  266. <img src="'+ msg[i].OtherStylePortfolio[j].PortfoliolImg + '" width="70" height="70" alt="' + msg[i].OtherStylePortfolio.PortfoliolImgAlt + '">\
  267. </a>\
  268. </div>'
  269. };
  270. CaseDetail += '</div></div>';
  271. CaseDetail += '<div class="divider"></div>';
  272. CaseDetail +=
  273. '<div class="info-area-data-desktop py-3">\
  274. <div class="ml-2">CASE DATA</div>\
  275. <div class="data-table-desktop ml-2">\
  276. <div class="data-table-items d-flex">\
  277. <div class="data-table-lf">\
  278. <div>裝潢費用:</div>\
  279. </div>\
  280. <div class="data-table-rt">\
  281. <div>'+ msg[i].CaseProject + '</div>\
  282. </div>\
  283. </div>\
  284. <div class="data-table-items d-flex">\
  285. <div class="data-table-lf">\
  286. <div>居住成員:</div>\
  287. </div>\
  288. <div class="data-table-rt">\
  289. <div>'+ msg[i].CaseDataMember + '</div>\
  290. </div>\
  291. </div>\
  292. <div class="data-table-items d-flex">\
  293. <div class="data-table-lf">\
  294. <div>設計風格:</div>\
  295. </div>\
  296. <div class="data-table-rt">\
  297. <div>'+ msg[i].CaseStyle + '</div>\
  298. </div>\
  299. </div>\
  300. <div class="data-table-items d-flex">\
  301. <div class="data-table-lf">\
  302. <div>房屋類型:</div>\
  303. </div>\
  304. <div class="data-table-rt">\
  305. <div>'+ msg[i].CaseDataType + '</div>\
  306. </div>\
  307. </div>\
  308. <div class="data-table-items d-flex">\
  309. <div class="data-table-lf">\
  310. <div>房屋坪數:</div>\
  311. </div>\
  312. <div class="data-table-rt">\
  313. <div>'+ msg[i].CaseSize + '</div>\
  314. </div>\
  315. </div>\
  316. <div class="data-table-items d-flex">\
  317. <div class="data-table-lf">\
  318. <div>房屋狀況:</div>\
  319. </div>\
  320. <div class="data-table-rt">\
  321. <div>'+ msg[i].CaseDataSituation + '</div>\
  322. </div>\
  323. </div>\
  324. <div class="data-table-items d-flex">\
  325. <div class="data-table-lf">\
  326. <div>圖片提供:</div>\
  327. </div>\
  328. <div class="data-table-rt">\
  329. <div>'+ msg[i].CaseCompany + '</div>\
  330. </div>\
  331. </div>\
  332. <div class="data-table-items d-flex">\
  333. <div class="data-table-lf">\
  334. <div>空間格局:</div>\
  335. </div>\
  336. <div class="data-table-rt">\
  337. <div>'+ msg[i].CaseDataSpace + '</div>\
  338. </div>\
  339. </div>\
  340. <div class="data-table-items d-flex">\
  341. <div class="data-table-lf">\
  342. <div>主要建材:</div>\
  343. </div>\
  344. <div class="data-table-rt">\
  345. <div>'+ msg[i].CaseDataMaterial + '</div>\
  346. </div>\
  347. </div>\
  348. </div>\
  349. </div>';
  350. CaseDetail += '<div class="divider"></div>';
  351. CaseDetail +=
  352. '<div class="info-area-contact-desktop py-3 mb-2">\
  353. <div class="ml-2">聯絡資訊 Info</div>\
  354. <div class="contact-section-desktop ml-2 mt-2">\
  355. <div class="contact-section-detail-desktop mt-3">\
  356. <div class="d-flex">\
  357. <div class="contact-section-detail-lf">\
  358. <div><i aria-hidden="true" class="fa fa-phone"></i></div>\
  359. </div>\
  360. <div class="contact-section-detail-rt">\
  361. <div>\
  362. <a href="tel:'+ msg[i].CaseCompanyTel + '">' + msg[i].CaseCompanyTel + '</a>\
  363. </div>\
  364. </div>\
  365. </div>\
  366. <div class="d-flex">\
  367. <div class="contact-section-detail-lf">\
  368. <div><i class="fas fa-map-marker-alt"></i></div>\
  369. </div>\
  370. <div class="contact-section-detail-rt">\
  371. <div><a href="'+ msg[i].CaseCompanyMap + '" target="_blank">'+ msg[i].CaseCompanyAddress + '</a></div>\
  372. </div>\
  373. </div>\
  374. <div class="d-flex">\
  375. <div class="contact-section-detail-lf">\
  376. <div><i class="far fa-envelope"></i></div>\
  377. </div>\
  378. <div class="contact-section-detail-rt">\
  379. <div><a href="mailto:'+ msg[i].CaseCompanyEmail + '">' + msg[i].CaseCompanyEmail + '</a></div>\
  380. </div>\
  381. </div>\
  382. <div class="d-flex">\
  383. <div class="contact-section-detail-lf">\
  384. <div><i aria-hidden="true" class="fa fa-home"></i></div>\
  385. </div>\
  386. <div class="contact-section-detail-rt">\
  387. <div><a href="'+ msg[i].CaseCompanyWeb + '"\
  388. target="_blank">'+ msg[i].CaseCompanyWeb + '</a></div>\
  389. </div>\
  390. </div>\
  391. </div>\
  392. </div>\
  393. </div>'
  394. CaseDetail +='</div>'
  395. }
  396. $('.article').html(designersinfo);
  397. $('.CaseInfo').html(CaseInfo);
  398. $('.CaseTag').html(CaseTag);
  399. $('.caseData-PC-left').html(CaseData);
  400. $('.caseData-PC-right').html(CaseData2);
  401. $('.CaseNews-Card').html(CaseNews);
  402. $('.Case-popular').html(CasePopular);
  403. $('.CaseModel').html(CaseDetail);
  404. });
  405. }
  406. get_data();