index.html.vue 69 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634
  1. <template>
  2. <HomePageHead></HomePageHead>
  3. <HomePageNavigation></HomePageNavigation>
  4. <div class="adPlace phone_none">
  5. <HomeAdvertising :imgurl="adImg1"></HomeAdvertising>
  6. </div>
  7. <HomeSecondaryHeading :titleData="pageData" :pinyinid="routeId"></HomeSecondaryHeading>
  8. <section class="index_1 clearfix index_main phone_none">
  9. <!-- 最新 -->
  10. <div class="img_ul_1 clearfix">
  11. <NuxtLink class="img_li_1" :href="getLinkPathDetail(item)" :title="item.title"
  12. v-for="(item, index) in newest" :key="index">
  13. <img class="img_li_1_photo" :src="item.imgurl" :title="item.title" :alt="item.title">
  14. </NuxtLink>
  15. </div>
  16. <!-- 推荐 -->
  17. <div class="ul_1 clearfix">
  18. <NuxtLink class="ul_1_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
  19. v-for="(item, index) in recommend" :key="index">
  20. {{ item.title }}
  21. </NuxtLink>
  22. </div>
  23. </section>
  24. <main class="index_main clearfix phone_none">
  25. <div class="index_left">
  26. <!-- 第一部分 -->
  27. <div class="index_2 clearfix">
  28. <div class="index_2_head clearfix">
  29. <NuxtLink class="index_2_head_a" :class="{ 'index_2_head_a_only': tabsData1 == 1 }"
  30. @mouseenter="tabsData1 = 1" :href="getLinkPath(pageData[0])" v-if="pageData[0]"
  31. :title="pageData[0].alias">
  32. {{ pageData[0].alias }}
  33. </NuxtLink>
  34. <span class="index_2_head_a">/ </span>
  35. <NuxtLink class="index_2_head_a" :class="{ 'index_2_head_a_only': tabsData1 == 2 }"
  36. @mouseenter="tabsData1 = 2" :href="getLinkPath(pageData[1])" v-if="pageData[1]"
  37. :title="pageData[1].alias">
  38. {{ pageData[1].alias }}
  39. </NuxtLink>
  40. </div>
  41. <div class="index_2_in clearfix" v-if="tabsData1 === 1">
  42. <div class="ul_2 clearfix">
  43. <NuxtLink class="ul_2_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
  44. v-for="(item, index) in pageData[0].data2" :key="index">
  45. {{ item.title }}
  46. </NuxtLink>
  47. </div>
  48. <div class="img_ul_2 clearfix">
  49. <div class="img_li_2" v-for="(item, index) in pageData[0].data" :key="index">
  50. <NuxtLink class="img_li_2_a" :href="getLinkPathDetail(item)" :title="item.title">
  51. <img class="img_li_2_a_photo" :src="item.imgurl" :title="item.title" :alt="item.title">
  52. <div class="img_li_2_dot1 dot1">{{ item.title }}</div>
  53. </NuxtLink>
  54. </div>
  55. </div>
  56. </div>
  57. <div class="index_2_in clearfix" v-if="tabsData1 === 2">
  58. <div class="ul_2 clearfix">
  59. <NuxtLink class="ul_2_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
  60. v-for="(item, index) in pageData[1].data2" :key="index">
  61. {{ item.title }}
  62. </NuxtLink>
  63. </div>
  64. <div class="img_ul_2 clearfix">
  65. <div class="img_li_2" v-for="(item, index) in pageData[1].data" :key="index">
  66. <NuxtLink class="img_li_2_a" :href="getLinkPathDetail(item)" :title="item.title">
  67. <img class="img_li_2_a_photo" :src="item.imgurl" :title="item.title" :alt="item.title">
  68. <div class="img_li_2_dot1 dot1">{{ item.title }}</div>
  69. </NuxtLink>
  70. </div>
  71. </div>
  72. </div>
  73. </div>
  74. <!-- 第二部分 -->
  75. <div class="index_3 clearfix">
  76. <div class="index_3_head clearfix">
  77. <NuxtLink class="index_3_head_a" :class="{ 'index_3_head_a_only': tabsData2 == 1 }"
  78. :href="getLinkPath(pageData[2])" @mouseenter="tabsData2 = 1" v-if="pageData[2]"
  79. :title="pageData[2].alias">
  80. {{ pageData[2].alias }}
  81. </NuxtLink>
  82. <span class="index_3_head_a">/ </span>
  83. <NuxtLink class="index_3_head_a" :class="{ 'index_3_head_a_only': tabsData2 == 2 }"
  84. :href="getLinkPath(pageData[3])" @mouseenter="tabsData2 = 2" v-if="pageData[3]"
  85. :title="pageData[3].alias">
  86. {{ pageData[3].alias }}
  87. </NuxtLink>
  88. </div>
  89. <div class="index_3_in clearfix" v-if="tabsData2 == 1">
  90. <div class="ul_3 clearfix">
  91. <NuxtLink class="ul_3_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
  92. v-for="(item, index) in pageData[2].data2" :key="index">
  93. {{ item.title }}
  94. </NuxtLink>
  95. </div>
  96. <div class="img_ul_3 clearfix">
  97. <div class="img_li_3" v-for="(item, index) in pageData[2].data" :key="index">
  98. <NuxtLink class="img_li_3_a" :href="getLinkPathDetail(item)" :title="item.title">
  99. <img class="img_li_3_a_photo" :src="item.imgurl" :title="item.title" :alt="item.title">
  100. <div class="img_li_3_dot1 dot1">{{ item.title }}</div>
  101. </NuxtLink>
  102. </div>
  103. </div>
  104. </div>
  105. <div class="index_3_in clearfix" v-if="tabsData2 == 2">
  106. <div class="ul_3 clearfix">
  107. <NuxtLink class="ul_3_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
  108. v-for="(item, index) in pageData[3].data2" :key="index">
  109. {{ item.title }}
  110. </NuxtLink>
  111. </div>
  112. <div class="img_ul_3 clearfix">
  113. <div class="img_li_3" v-for="(item, index) in pageData[3].data" :key="index">
  114. <NuxtLink class="img_li_3_a" :href="getLinkPathDetail(item)" :title="item.title">
  115. <img class="img_li_3_a_photo" :src="item.imgurl" :title="item.title" :alt="item.title">
  116. <div class="img_li_3_dot1 dot1">{{ item.title }}</div>
  117. </NuxtLink>
  118. </div>
  119. </div>
  120. </div>
  121. </div>
  122. <!-- 第三部分 -->
  123. <div class="index_4 clearfix">
  124. <div class="index_4_head clearfix">
  125. <NuxtLink class="index_4_head_a" :class="{ 'index_4_head_a_only': tabsData3 == 1 }"
  126. :href="getLinkPath(pageData[4])" @mouseenter="tabsData3 = 1" v-if="pageData[4]"
  127. :title="pageData[4].alias">
  128. {{ pageData[4].alias }}
  129. </NuxtLink>
  130. <span class="index_4_head_a">/ </span>
  131. <NuxtLink class="index_4_head_a" :class="{ 'index_4_head_a_only': tabsData3 == 2 }"
  132. :href="getLinkPath(pageData[5])" @mouseenter="tabsData3 = 2" v-if="pageData[5]"
  133. :title="pageData[5].alias">
  134. {{ pageData[5].alias }}
  135. </NuxtLink>
  136. </div>
  137. <div class="index_4_in clearfix" v-if="tabsData3 == 1">
  138. <div class="ul_4 clearfix">
  139. <NuxtLink class="ul_4_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
  140. v-for="(item, index) in pageData[4].data2" :key="index">
  141. {{ item.title }}
  142. </NuxtLink>
  143. </div>
  144. <div class="img_ul_4 clearfix">
  145. <div class="img_li_4" v-for="(item, index) in pageData[4].data" :key="index">
  146. <NuxtLink class="img_li_4_a" :href="getLinkPathDetail(item)" :title="item.title">
  147. <img class="img_li_4_a_photo" :src="item.imgurl" :title="item.title" :alt="item.title">
  148. <div class="img_li_4_dot1 dot1">{{ item.title }}</div>
  149. </NuxtLink>
  150. </div>
  151. </div>
  152. </div>
  153. <div class="index_4_in clearfix" v-if="tabsData3 == 2">
  154. <div class="ul_4 clearfix">
  155. <NuxtLink class="ul_4_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
  156. v-for="(item, index) in pageData[5].data2" :key="index">
  157. {{ item.title }}
  158. </NuxtLink>
  159. </div>
  160. <div class="img_ul_4 clearfix">
  161. <div class="img_li_4" v-for="(item, index) in pageData[5].data" :key="index">
  162. <NuxtLink class="img_li_4_a" :href="getLinkPathDetail(item)" :title="item.title">
  163. <img class="img_li_4_a_photo" :src="item.imgurl" :title="item.title" :alt="item.title">
  164. <div class="img_li_4_dot1 dot1">{{ item.title }}</div>
  165. </NuxtLink>
  166. </div>
  167. </div>
  168. </div>
  169. </div>
  170. <!-- 第四部分 -->
  171. <div class="index_5 clearfix">
  172. <div class="index_5_head clearfix">
  173. <NuxtLink class="index_5_head_a" :class="{ 'index_5_head_a_only': tabsData4 == 1 }"
  174. :href="getLinkPath(pageData[6])" @mouseenter="tabsData4 = 1" v-if="pageData[6]"
  175. :title="pageData[6].alias">
  176. {{ pageData[6].alias }}
  177. </NuxtLink>
  178. <span class="index_5_head_a">/ </span>
  179. <NuxtLink class="index_5_head_a" :class="{ 'index_5_head_a_only': tabsData4 == 2 }"
  180. :href="getLinkPath(pageData[7])" @mouseenter="tabsData4 = 2" v-if="pageData[7]"
  181. :title="pageData[7].alias">
  182. {{ pageData[7].alias }}
  183. </NuxtLink>
  184. </div>
  185. <div class="index_5_in clearfix" v-if="tabsData4 == 1">
  186. <div class="ul_5 clearfix">
  187. <NuxtLink class="ul_5_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
  188. v-for="(item, index) in pageData[6].data2" :key="index">
  189. {{ item.title }}
  190. </NuxtLink>
  191. </div>
  192. <div class="img_ul_5 clearfix">
  193. <div class="img_li_5" v-for="(item, index) in pageData[6].data" :key="index">
  194. <NuxtLink class="img_li_5_a" :href="getLinkPathDetail(item)" :title="item.title">
  195. <img class="img_li_5_a_photo" :src="item.imgurl" :title="item.title" :alt="item.title">
  196. <div class="img_li_5_dot1 dot1">{{ item.title }}</div>
  197. </NuxtLink>
  198. </div>
  199. </div>
  200. </div>
  201. <div class="index_5_in clearfix" v-if="tabsData4 == 2">
  202. <div class="ul_5 clearfix">
  203. <NuxtLink class="ul_5_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
  204. v-for="(item, index) in pageData[7].data2" :key="index">
  205. {{ item.title }}
  206. </NuxtLink>
  207. </div>
  208. <div class="img_ul_5 clearfix">
  209. <div class="img_li_5" v-for="(item, index) in pageData[7].data" :key="index">
  210. <NuxtLink class="img_li_5_a" :href="getLinkPathDetail(item)" :title="item.title">
  211. <img class="img_li_5_a_photo" :src="item.imgurl" :title="item.title" :alt="item.title">
  212. <div class="img_li_5_dot1 dot1">{{ item.title }}</div>
  213. </NuxtLink>
  214. </div>
  215. </div>
  216. </div>
  217. </div>
  218. <!-- 第五部分 -->
  219. <div class="index_5 clearfix">
  220. <div class="index_5_head clearfix">
  221. <NuxtLink class="index_5_head_a" :class="{ 'index_5_head_a_only': tabsData5 == 1 }"
  222. :href="getLinkPath(pageData[8])" @mouseenter="tabsData5 = 1" v-if="pageData[8]"
  223. :title="pageData[8].alias">
  224. {{ pageData[8].alias }}
  225. </NuxtLink>
  226. <span class="index_5_head_a" v-if="pageData[9]">/ </span>
  227. <NuxtLink class="index_5_head_a" :class="{ 'index_5_head_a_only': tabsData5 == 2 }"
  228. :href="getLinkPath(pageData[9])" @mouseenter="tabsData5 = 2" v-if="pageData[9]"
  229. :title="pageData[9].alias">
  230. {{ pageData[9].alias }}
  231. </NuxtLink>
  232. </div>
  233. <div class="index_5_in clearfix" v-if="tabsData5 == 1">
  234. <div class="ul_5 clearfix">
  235. <NuxtLink class="ul_5_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
  236. v-for="(item, index) in pageData[8].data2" :key="index">
  237. {{ item.title }}
  238. </NuxtLink>
  239. </div>
  240. <div class="img_ul_5 clearfix">
  241. <div class="img_li_5" v-for="(item, index) in pageData[8].data" :key="index">
  242. <NuxtLink class="img_li_5_a" :href="getLinkPathDetail(item)" :title="item.title">
  243. <img class="img_li_5_a_photo" :src="item.imgurl" :title="item.title" :alt="item.title">
  244. <div class="img_li_5_dot1 dot1">{{ item.title }}</div>
  245. </NuxtLink>
  246. </div>
  247. </div>
  248. </div>
  249. <div class="index_5_in clearfix" v-if="tabsData5 == 2">
  250. <div class="ul_5 clearfix">
  251. <NuxtLink class="ul_5_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
  252. v-for="(item, index) in pageData[9].data2" :key="index">
  253. {{ item.title }}
  254. </NuxtLink>
  255. </div>
  256. <div class="img_ul_5 clearfix">
  257. <div class="img_li_5" v-for="(item, index) in pageData[9].data" :key="index">
  258. <NuxtLink class="img_li_5_a" :href="getLinkPathDetail(item)" :title="item.title">
  259. <img class="img_li_5_a_photo" :src="item.imgurl" :title="item.title" :alt="item.title">
  260. <div class="img_li_5_dot1 dot1">{{ item.title }}</div>
  261. </NuxtLink>
  262. </div>
  263. </div>
  264. </div>
  265. </div>
  266. </div>
  267. <aside class="index_aside clearfix">
  268. <!-- 最新资讯 -->
  269. <div class="clearfix">
  270. <div class="index_aside_head_1 clearfix">
  271. <span class="index_aside_head_1_a" title="最新资讯">
  272. 最新资讯
  273. </span>
  274. </div>
  275. <div class="index_aside_img_ul_1 clearfix">
  276. <div class="index_aside_img_li_1 clearfix" v-for="(item, index) in hotNewsListdata1" :key="index">
  277. <NuxtLink class="index_aside_img_li_1_a" :href="getLinkPathDetail(item)" :title="item.title"
  278. :target="item.islink == 1 ? '_blank' : '_self'">
  279. <div class="index_aside_img_li_1_a_img_box">
  280. <img class="" :src="item.imgurl" :title="item.title" :alt="item.title">
  281. </div>
  282. <div class="index_aside_img_li_1_dot3 dot3">{{ item.title }}</div>
  283. </NuxtLink>
  284. </div>
  285. </div>
  286. <div class="index_aside_ul_1 clearfix">
  287. <NuxtLink class="index_aside_ul_1_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
  288. v-for="(item, index) in hotNewsListdata2" :key="index">
  289. {{ item.title }}
  290. </NuxtLink>
  291. </div>
  292. </div>
  293. <!-- 热点精选 -->
  294. <div class="">
  295. <div class="index_aside_head_2 clearfix">
  296. <span class="index_aside_head_2_a" title="热点精选">
  297. 热点精选
  298. </span>
  299. </div>
  300. <div class="index_aside_img_ul_2 clearfix">
  301. <div class="index_aside_img_li_2 clearfix" v-for="(item, index) in hotNewsList_img" :key="index">
  302. <NuxtLink class="index_aside_img_li_2_a" :href="getLinkPathDetail(item)" :title="item.title">
  303. <div class="index_aside_img_li_2_a_img_box">
  304. <img class="" :src="item.imgurl" :title="item.title" :alt="item.title">
  305. </div>
  306. <div class="index_aside_img_li_2_dot3 dot3">{{ item.title }}</div>
  307. </NuxtLink>
  308. </div>
  309. </div>
  310. <div class="index_aside_ul_2 clearfix">
  311. <NuxtLink class="index_aside_ul_2_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
  312. v-for="(item, index) in hotNewsList_text" :key="index">
  313. {{ item.title }}
  314. </NuxtLink>
  315. </div>
  316. </div>
  317. <!-- 加盟连锁 -->
  318. </aside>
  319. <HomeAdvertising :imgurl="adImg2"></HomeAdvertising>
  320. </main>
  321. <div class="pc_none" v-if="pageData[0]">
  322. <div class="phone_box_0" >
  323. <div class="phone_box_1_head">
  324. <NuxtLink class=""
  325. :href="getLinkPath(pageData[0])" >
  326. {{ pageData[0].alias }}
  327. </NuxtLink>
  328. </div>
  329. <div class="phone_box_1_img_ul">
  330. <div class="" >
  331. <NuxtLink
  332. v-for="(item, index) in pageData[0].data.slice(0,1)"
  333. :key="index"
  334. :href="getLinkPathDetail(item)" >
  335. <img class="" :src="item.imgurl" :alt="item.title">
  336. <span class="">{{ item.title }}</span>
  337. </NuxtLink>
  338. </div>
  339. </div>
  340. <div class="phone_box_1_ul">
  341. <div class="">
  342. <NuxtLink class=""
  343. v-for="(item, index) in pageData[0].data2.slice(0,3)"
  344. :href="getLinkPathDetail(item)"
  345. :key="index">
  346. {{ item.title }}
  347. </NuxtLink>
  348. </div>
  349. </div>
  350. </div>
  351. </div>
  352. <div class="pc_none" v-if="pageData[1]">
  353. <div class="phone_box_1" >
  354. <div class="phone_box_1_head">
  355. <NuxtLink class=""
  356. :href="getLinkPath(pageData[1])" >
  357. {{ pageData[1].alias }}
  358. </NuxtLink>
  359. </div>
  360. <div class="phone_box_1_img_ul">
  361. <div class="" >
  362. <NuxtLink
  363. v-for="(item, index) in pageData[1].data.slice(0,1)"
  364. :key="index"
  365. :href="getLinkPathDetail(item)" >
  366. <img class="" :src="item.imgurl" :alt="item.title">
  367. <span class="">{{ item.title }}</span>
  368. </NuxtLink>
  369. </div>
  370. </div>
  371. <div class="phone_box_1_ul">
  372. <div class="">
  373. <NuxtLink class=""
  374. v-for="(item, index) in pageData[1].data2.slice(0,3)"
  375. :href="getLinkPathDetail(item)"
  376. :key="index">
  377. {{ item.title }}
  378. </NuxtLink>
  379. </div>
  380. </div>
  381. </div>
  382. </div>
  383. <div class="pc_none" v-if="pageData[2]">
  384. <div class="phone_box_2">
  385. <div class="phone_box_1_head">
  386. <NuxtLink class=""
  387. :href="getLinkPath(pageData[2])" >
  388. {{ pageData[2].alias }}
  389. </NuxtLink>
  390. </div>
  391. <div class="phone_box_1_img_ul">
  392. <div class="" >
  393. <NuxtLink
  394. v-for="(item, index) in pageData[2].data.slice(0,1)"
  395. :key="index"
  396. :href="getLinkPathDetail(item)" >
  397. <img class="" :src="item.imgurl" :alt="item.title">
  398. <span class="">{{ item.title }}</span>
  399. </NuxtLink>
  400. </div>
  401. </div>
  402. <div class="phone_box_1_ul">
  403. <div class="">
  404. <NuxtLink class=""
  405. v-for="(item, index) in pageData[2].data2.slice(0,3)"
  406. :href="getLinkPathDetail(item)"
  407. :key="index">
  408. {{ item.title }}
  409. </NuxtLink>
  410. </div>
  411. </div>
  412. </div>
  413. </div>
  414. <div class="pc_none" v-if="pageData[3]">
  415. <div class="phone_box_3">
  416. <div class="phone_box_1_head">
  417. <NuxtLink class=""
  418. :href="getLinkPath(pageData[3])" >
  419. {{ pageData[3].alias }}
  420. </NuxtLink>
  421. </div>
  422. <div class="phone_box_1_img_ul">
  423. <div class="" >
  424. <NuxtLink
  425. v-for="(item, index) in pageData[3].data.slice(0,1)"
  426. :key="index"
  427. :href="getLinkPathDetail(item)" >
  428. <img class="" :src="item.imgurl" :alt="item.title">
  429. <span class="">{{ item.title }}</span>
  430. </NuxtLink>
  431. </div>
  432. </div>
  433. <div class="phone_box_1_ul">
  434. <div class="">
  435. <NuxtLink class=""
  436. v-for="(item, index) in pageData[3].data2.slice(0,3)"
  437. :href="getLinkPathDetail(item)"
  438. :key="index">
  439. {{ item.title }}
  440. </NuxtLink>
  441. </div>
  442. </div>
  443. </div>
  444. </div>
  445. <div class="pc_none" v-if="pageData[4]">
  446. <div class="phone_box_4">
  447. <div class="phone_box_1_head">
  448. <NuxtLink class=""
  449. :href="getLinkPath(pageData[4])" >
  450. {{ pageData[4].alias }}
  451. </NuxtLink>
  452. </div>
  453. <div class="phone_box_1_img_ul">
  454. <div class="" >
  455. <NuxtLink
  456. v-for="(item, index) in pageData[4].data.slice(0,1)"
  457. :key="index"
  458. :href="getLinkPathDetail(item)" >
  459. <img class="" :src="item.imgurl" :alt="item.title">
  460. <span class="">{{ item.title }}</span>
  461. </NuxtLink>
  462. </div>
  463. </div>
  464. <div class="phone_box_1_ul">
  465. <div class="">
  466. <NuxtLink class=""
  467. v-for="(item, index) in pageData[4].data2.slice(0,3)"
  468. :href="getLinkPathDetail(item)"
  469. :key="index">
  470. {{ item.title }}
  471. </NuxtLink>
  472. </div>
  473. </div>
  474. </div>
  475. </div>
  476. <div class="pc_none" v-if="pageData[5]">
  477. <div class="phone_box_5">
  478. <div class="phone_box_1_head">
  479. <NuxtLink class=""
  480. :href="getLinkPath(pageData[5])" >
  481. {{ pageData[5].alias }}
  482. </NuxtLink>
  483. </div>
  484. <div class="phone_box_1_img_ul">
  485. <div class="" >
  486. <NuxtLink
  487. v-for="(item, index) in pageData[5].data.slice(0,1)"
  488. :key="index"
  489. :href="getLinkPathDetail(item)" >
  490. <img class="" :src="item.imgurl" :alt="item.title">
  491. <span class="">{{ item.title }}</span>
  492. </NuxtLink>
  493. </div>
  494. </div>
  495. <div class="phone_box_1_ul">
  496. <div class="">
  497. <NuxtLink class=""
  498. v-for="(item, index) in pageData[5].data2.slice(0,3)"
  499. :href="getLinkPathDetail(item)"
  500. :key="index">
  501. {{ item.title }}
  502. </NuxtLink>
  503. </div>
  504. </div>
  505. </div>
  506. </div>
  507. <div class="pc_none" v-if="pageData[6]">
  508. <div class="phone_box_6">
  509. <div class="phone_box_1_head">
  510. <NuxtLink class=""
  511. :href="getLinkPath(pageData[6])" >
  512. {{ pageData[6].alias }}
  513. </NuxtLink>
  514. </div>
  515. <div class="phone_box_1_img_ul">
  516. <div class="" >
  517. <NuxtLink
  518. v-for="(item, index) in pageData[6].data.slice(0,1)"
  519. :key="index"
  520. :href="getLinkPathDetail(item)" >
  521. <img class="" :src="item.imgurl" :alt="item.title">
  522. <span class="">{{ item.title }}</span>
  523. </NuxtLink>
  524. </div>
  525. </div>
  526. <div class="phone_box_1_ul">
  527. <div class="">
  528. <NuxtLink class=""
  529. v-for="(item, index) in pageData[6].data2.slice(0,3)"
  530. :href="getLinkPathDetail(item)"
  531. :key="index">
  532. {{ item.title }}
  533. </NuxtLink>
  534. </div>
  535. </div>
  536. </div>
  537. </div>
  538. <div class="pc_none" v-if="pageData[7]">
  539. <div class="phone_box_7">
  540. <div class="phone_box_1_head">
  541. <NuxtLink class=""
  542. :href="getLinkPath(pageData[7])" >
  543. {{ pageData[7].alias }}
  544. </NuxtLink>
  545. </div>
  546. <div class="phone_box_1_img_ul">
  547. <div class="" >
  548. <NuxtLink
  549. v-for="(item, index) in pageData[7].data.slice(0,1)"
  550. :key="index"
  551. :href="getLinkPathDetail(item)" >
  552. <img class="" :src="item.imgurl" :alt="item.title">
  553. <span class="">{{ item.title }}</span>
  554. </NuxtLink>
  555. </div>
  556. </div>
  557. <div class="phone_box_1_ul">
  558. <div class="">
  559. <NuxtLink class=""
  560. v-for="(item, index) in pageData[7].data2.slice(0,3)"
  561. :href="getLinkPathDetail(item)"
  562. :key="index">
  563. {{ item.title }}
  564. </NuxtLink>
  565. </div>
  566. </div>
  567. </div>
  568. </div>
  569. <div class="pc_none" v-if="pageData[8]">
  570. <div class="phone_box_8">
  571. <div class="phone_box_1_head">
  572. <NuxtLink class=""
  573. :href="getLinkPath(pageData[8])" >
  574. {{ pageData[8].alias }}
  575. </NuxtLink>
  576. </div>
  577. <div class="phone_box_1_img_ul">
  578. <div class="" >
  579. <NuxtLink
  580. v-for="(item, index) in pageData[8].data.slice(0,1)"
  581. :key="index"
  582. :href="getLinkPathDetail(item)" >
  583. <img class="" :src="item.imgurl" :alt="item.title">
  584. <span class="">{{ item.title }}</span>
  585. </NuxtLink>
  586. </div>
  587. </div>
  588. <div class="phone_box_1_ul">
  589. <div class="">
  590. <NuxtLink class=""
  591. v-for="(item, index) in pageData[8].data2.slice(0,3)"
  592. :href="getLinkPathDetail(item)"
  593. :key="index">
  594. {{ item.title }}
  595. </NuxtLink>
  596. </div>
  597. </div>
  598. </div>
  599. </div>
  600. <HomeFoot></HomeFoot>
  601. </template>
  602. <script setup>
  603. //0.加载页面依赖 start ---------------------------------------->
  604. import { ref, onMounted } from 'vue';
  605. import { ElMessage } from 'element-plus';
  606. import { NuxtLink } from '#components';
  607. //0.加载页面依赖 end ---------------------------------------->
  608. //1.获得路由id start ---------------------------------------->
  609. const targetSegment = getRoutePath(1);
  610. //1.1 获得当前的路由id
  611. let routeId;
  612. //通过导航路径反向查询导航id
  613. const getRouteId = await requestDataPromise('/web/getWebsiteRoute', {
  614. method: 'GET',
  615. query: {
  616. 'pinyin': targetSegment,
  617. },
  618. });
  619. if (getRouteId.code == 200) {
  620. routeId = getRouteId.data.category_id
  621. } else {
  622. console.log("获得路由id出错!", getRouteId.message)
  623. }
  624. //1.获得路由id end ---------------------------------------->
  625. //2.选项卡 start ---------------------------------------->
  626. const tabsData1 = ref(1)
  627. const tabsData2 = ref(1)
  628. const tabsData3 = ref(1)
  629. const tabsData4 = ref(1)
  630. const tabsData5 = ref(1)
  631. //2.选项卡 end ---------------------------------------->
  632. //3.广告 start ---------------------------------------->
  633. let adImg1 = ref({})
  634. let adImg2 = ref({})
  635. let adImg3 = ref({})
  636. let adImg4 = ref({})
  637. onMounted(async () => {
  638. //从客户端获取行政职能部门 加快打开速度
  639. const { $webUrl, $CwebUrl } = useNuxtApp();
  640. //广告1
  641. let url = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=nmgw_category_0001`
  642. const responseAd1 = await fetch(url, {
  643. headers: {
  644. 'Content-Type': 'application/json',
  645. 'Userurl': $CwebUrl,
  646. 'Origin': $CwebUrl
  647. }
  648. });
  649. const resultAd1 = await responseAd1.json();
  650. adImg1.value = resultAd1.data[0];
  651. //广告2
  652. let url2 = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=nmgw_category_0002`
  653. const responseAd2 = await fetch(url2, {
  654. headers: {
  655. 'Content-Type': 'application/json',
  656. 'Userurl': $CwebUrl,
  657. 'Origin': $CwebUrl
  658. }
  659. });
  660. const resultAd2 = await responseAd2.json();
  661. adImg2.value = resultAd2.data[0];
  662. //广告3
  663. let url3 = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=nmgw_category_0003`
  664. const responseAd3 = await fetch(url3, {
  665. headers: {
  666. 'Content-Type': 'application/json',
  667. 'Userurl': $CwebUrl,
  668. 'Origin': $CwebUrl
  669. }
  670. });
  671. const resultAd3 = await responseAd3.json();
  672. adImg3.value = resultAd3.data[0];
  673. //广告4
  674. let url4 = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=nmgw_category_0004`
  675. const responseAd4 = await fetch(url4, {
  676. headers: {
  677. 'Content-Type': 'application/json',
  678. 'Userurl': $CwebUrl,
  679. 'Origin': $CwebUrl
  680. }
  681. });
  682. const resultAd4 = await responseAd4.json();
  683. adImg4.value = resultAd4.data[0];
  684. })
  685. //3.广告 end ---------------------------------------->
  686. //4.页面数据 start ---------------------------------------->
  687. const pageData = ref([
  688. //示例:
  689. // {
  690. // id: 1,
  691. // title: "", //该导航的标题
  692. // data: [], //数据1
  693. // data1: [], //数据2
  694. // data2: [], //数据3
  695. // data3: [], //数据4
  696. // data4: [], //数据5
  697. // category_id1: "", //子导航id1
  698. // category_id2: "",
  699. // category_id3: "",
  700. // category_id4: "",
  701. // title1: "", //子导航标题1
  702. // title2: "",
  703. // title3: "",
  704. // title4: "",
  705. // cid: "" //该导航的id
  706. // },
  707. ])
  708. //4.1 获取所有导航
  709. try {
  710. const navigateData = await requestDataPromise('/web/getWebsiteModelCategory', {
  711. method: 'GET',
  712. query: {
  713. 'placeid': 1,
  714. 'pid': routeId,
  715. 'num': 20
  716. },
  717. });
  718. if (navigateData.code == 200) {
  719. // 遍历可用的导航池放到页面中
  720. for (let index in navigateData.data) {
  721. let data = {
  722. title: navigateData.data[index].name,
  723. cid: navigateData.data[index].category_id,
  724. children_count: navigateData.data[index].children_count,
  725. alias: navigateData.data[index].alias,
  726. aLIas_pinyin: targetSegment + "/" + navigateData.data[index].aLIas_pinyin,
  727. data: [],
  728. data1: [],
  729. data2: [],
  730. data3: [],
  731. data4: [],
  732. category_id1: "",
  733. category_id2: "",
  734. category_id3: "",
  735. category_id4: "",
  736. title1: "",
  737. title2: "",
  738. title3: "",
  739. title4: ""
  740. };
  741. if (navigateData.data[index].is_url == 1) {
  742. // 处理 URL 的逻辑
  743. } else {
  744. //每个页面最多8个模块
  745. pageData.value.push(data);
  746. }
  747. }
  748. //导航池加载完毕,开始申请模块数据
  749. let getJson = []
  750. for (let i = 0; i < pageData.value.length; i++) {
  751. if (i == 0) {
  752. getJson.push({ "id": pageData.value[i].cid + ",2,10" });
  753. } else if (i == 1) {
  754. getJson.push({ "id": pageData.value[i].cid + ",2,10" });
  755. } else if (i == 2) {
  756. getJson.push({ "id": pageData.value[i].cid + ",2,10" });
  757. } else if (i == 3) {
  758. getJson.push({ "id": pageData.value[i].cid + ",2,10" });
  759. } else if (i == 4) {
  760. getJson.push({ "id": pageData.value[i].cid + ",2,10" });
  761. } else if (i == 5) {
  762. getJson.push({ "id": pageData.value[i].cid + ",2,10" });
  763. } else if (i == 6) {
  764. getJson.push({ "id": pageData.value[i].cid + ",2,10" });
  765. } else if (i == 7) {
  766. getJson.push({ "id": pageData.value[i].cid + ",2,10" });
  767. } else if (i == 8) {
  768. getJson.push({ "id": pageData.value[i].cid + ",2,10" });
  769. } else if (i == 9) {
  770. getJson.push({ "id": pageData.value[i].cid + ",2,10" });
  771. }
  772. }
  773. let jsonString = JSON.stringify(getJson);
  774. getPageAllData(jsonString);
  775. let getJson1 = [
  776. { "level": "2,6,0" },
  777. { "level": "1,0,10" },
  778. ]
  779. let jsonString1 = JSON.stringify(getJson1);
  780. getPageHotData(jsonString1);
  781. } else {
  782. console.log("错误:渲染8个模块环节出错,请检查是否存在没有数据的模块!")
  783. }
  784. } catch (error) {
  785. console.log("错误:导航池渲染执行接口出错!请检查频道页渲染的模块数据是否完整!")
  786. }
  787. // 获取所有模块数据
  788. async function getPageAllData(jsonString) {
  789. const mkdata = await requestDataPromise('/web/getWebsiteProject', {
  790. method: 'GET',
  791. query: {
  792. 'id': jsonString
  793. },
  794. });
  795. console.log('mkdata', mkdata.data)
  796. if (mkdata.code == 200) {
  797. if (mkdata.data.length > 0) {
  798. //模块1 顶部大图和列表
  799. pageData.value[0].data = mkdata.data[0].img_num;
  800. pageData.value[0].data2 = mkdata.data[0].text_num;
  801. }
  802. if (mkdata.data.length > 1) {
  803. //模块2
  804. pageData.value[1].data = mkdata.data[1].img_num;
  805. pageData.value[1].data2 = mkdata.data[1].text_num;
  806. }
  807. if (mkdata.data.length > 2) {
  808. pageData.value[2].data = mkdata.data[2].img_num;
  809. pageData.value[2].data2 = mkdata.data[2].text_num;
  810. }
  811. if (mkdata.data.length > 3) {
  812. pageData.value[3].data = mkdata.data[3].img_num;
  813. pageData.value[3].data2 = mkdata.data[3].text_num;
  814. }
  815. if (mkdata.data.length > 4) {
  816. pageData.value[4].data = mkdata.data[4].img_num;
  817. pageData.value[4].data2 = mkdata.data[4].text_num;
  818. }
  819. if (mkdata.data.length > 5) {
  820. pageData.value[5].data = mkdata.data[5].img_num;
  821. pageData.value[5].data2 = mkdata.data[5].text_num;
  822. }
  823. if (mkdata.data.length > 6) {
  824. pageData.value[6].data = mkdata.data[6].img_num;
  825. pageData.value[6].data2 = mkdata.data[6].text_num;
  826. }
  827. if (mkdata.data.length > 7) {
  828. pageData.value[7].data = mkdata.data[7].img_num;
  829. pageData.value[7].data2 = mkdata.data[7].text_num;
  830. }
  831. if (mkdata.data.length > 8) {
  832. pageData.value[8].data = mkdata.data[8].img_num;
  833. pageData.value[8].data2 = mkdata.data[8].text_num;
  834. }
  835. if (mkdata.data.length > 9) {
  836. pageData.value[9].data = mkdata.data[9].img_num;
  837. pageData.value[9].data2 = mkdata.data[9].text_num;
  838. }
  839. } else {
  840. ElMessage.error(mkdata.message)
  841. }
  842. }
  843. // 获取最新模块数据
  844. let newest = ref([]);
  845. let recommend = ref([]);
  846. async function getPageHotData(jsonString1) {
  847. const mkdata = await requestDataPromise('/web/getWebsiteProject', {
  848. method: 'GET',
  849. query: {
  850. 'id': jsonString1
  851. },
  852. });
  853. console.log('mkdata_HotData', mkdata.data)
  854. if (mkdata.code == 200) {
  855. if (mkdata.data.length > 0) {
  856. newest.value = mkdata.data[0].img_num;
  857. recommend.value = mkdata.data[1].text_num;
  858. }
  859. } else {
  860. ElMessage.error(mkdata.message)
  861. }
  862. }
  863. //4.页面数据 end ---------------------------------------->
  864. // 5.获取最新资讯和热点精选 start---------------------------------->
  865. // 5.1 最新资讯
  866. const hotNewsListdata1 = ref([])
  867. const hotNewsListdata2 = ref([])
  868. async function getPageData() {
  869. const mkdata = await requestDataPromise('/web/getWebsiteArticlett', {
  870. method: 'GET',
  871. query: {
  872. 'imgnum': 2,
  873. 'textnum': 4,
  874. 'placeid': 0,
  875. 'level': 4,
  876. 'id': 0,
  877. },
  878. });
  879. // console.log('mkdata1111111', mkdata.data);
  880. if (mkdata.code == 200) {
  881. hotNewsListdata1.value = mkdata.data.img;
  882. hotNewsListdata2.value = mkdata.data.text;
  883. } else {
  884. console.log("错误位置:获取最新资讯")
  885. }
  886. }
  887. getPageData();
  888. // 5.2 热点精选
  889. const hotNewsList_img = ref([])
  890. const hotNewsList_text = ref([])
  891. async function getPageData2() {
  892. const mkdata = await requestDataPromise('/web/getWebsiteArticlett', {
  893. method: 'GET',
  894. query: {
  895. 'imgnum': 2,
  896. 'textnum': 4,
  897. 'level': 5,
  898. 'placeid': 0,
  899. 'id': 0
  900. },
  901. });
  902. // console.log('mkdata111111222222', mkdata.data);
  903. if (mkdata.code == 200) {
  904. hotNewsList_img.value = mkdata.data.img;
  905. hotNewsList_text.value = mkdata.data.text;
  906. } else {
  907. console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
  908. console.log("错误位置:获取热点精选")
  909. console.log("后端错误反馈:", mkdata.message)
  910. console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
  911. }
  912. }
  913. getPageData2();
  914. // 5.获取最新资讯和热点精选 end---------------------------------->
  915. //6.设置seo信息 start---------------------------------------->
  916. const setData = await requestDataPromise('/web/getWebsiteCategoryHead', {
  917. method: 'GET',
  918. query: {
  919. 'catid': routeId
  920. },
  921. });
  922. if (setData.code == 200) {
  923. let seoTitle = setData.data.seo_title;
  924. let seoDescription = setData.data.seo_description;
  925. let seoKeywords = setData.data.seo_keywords;
  926. let seoSuffix = setData.data.suffix;
  927. let seoName = setData.data.website_name;
  928. useSeoMeta({
  929. title: seoTitle + "_" + seoName + "_" + seoSuffix,
  930. meta: [
  931. { name: 'keywords', content: seoKeywords + "_" + seoName + "_" + seoSuffix, tagPriority: 10 },
  932. { name: 'description', content: seoDescription + "_" + seoName + "_" + seoSuffix, tagPriority: 10 },
  933. { name: 'viewport', content: 'width=device-width,initial-scale=1,user-scalable=no',tagPriority: 10 }
  934. ]
  935. });
  936. } else {
  937. console.log("设置频道页SEO出错!", setData.message)
  938. }
  939. //6.设置seo信息 end---------------------------------------->
  940. </script>
  941. <style lang="less" scoped>
  942. @import url(@/assets/css/project/class.less);
  943. </style>
  944. <style lang="less" scoped>
  945. @media screen and (min-width:801px){/*pc*/
  946. .pc_none{display:none;}
  947. }
  948. @media screen and (max-width:800px){/*ipad_phone*/
  949. .phone_box_0{
  950. width:92%;margin:0px auto 0px;
  951. .phone_box_1_head{
  952. height:50px;line-height:50px;
  953. background:#fff;border-bottom:1px solid #E6E6E6;
  954. margin-top:0px;width:100%;
  955. a{
  956. float:left;height:50px;line-height:50px;margin:0;position:relative;
  957. color:#489d97;font-size:18px; font-weight:bold;box-sizing:border-box;
  958. position:relative;padding-left:8px;
  959. }
  960. a::before{
  961. content: '';display: block;
  962. position:absolute;left:0px;top:18px;
  963. background: linear-gradient(to top, #0998A9, #6ADDD6);
  964. width:3px;height:15px;
  965. }
  966. }
  967. .phone_box_1_img_ul{
  968. height:55vw;overflow:hidden;margin-top:15px;
  969. div{width:100%;float:none;height:55vw;border-radius:10px;position:relative;overflow:hidden;}
  970. a{display:block;width:100%;height:100%;}
  971. img{display:block;width:100%;height:100%;}
  972. span{
  973. position:absolute;width:100%;height:66px;line-height:90px;color:#fff; font-size:16px;
  974. left:0px;bottom:0px;padding:0px 5%;box-sizing:border-box; display:block;
  975. background:linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, .5));
  976. word-break: keep-all; white-space: nowrap;overflow:hidden;text-overflow:ellipsis;
  977. }
  978. >div>a:nth-of-type(n+2){display:none;}
  979. }
  980. .phone_box_1_ul{
  981. overflow:hidden;height:123px;margin:15px auto 0px;
  982. >div{width:100%;height:100%;}
  983. a{
  984. width:100%!important;display:block;height:40px;line-height:40px;
  985. border-bottom:1px solid #E6E6E6;display:block;position:relative;
  986. word-break: keep-all; white-space: nowrap;overflow:hidden;text-overflow:ellipsis;
  987. font-size:16px;color:#333;text-indent:18px;
  988. }
  989. a::after{
  990. content: '';display: block;
  991. position:absolute;left:0px;top:18px;background:#E6E6E6;
  992. width:6px;height:6px;
  993. }
  994. a:nth-of-type(n+4){display:none;}
  995. }
  996. }
  997. .phone_box_1{
  998. width:92%;margin:0px auto 0px;
  999. .phone_box_1_head{
  1000. height:50px;line-height:50px;
  1001. background:#fff;border-bottom:1px solid #E6E6E6;
  1002. margin-top:15px;width:100%;
  1003. a{
  1004. float:left;height:50px;line-height:50px;margin:0;position:relative;
  1005. color:#489d97;font-size:18px; font-weight:bold;box-sizing:border-box;
  1006. position:relative;padding-left:8px;
  1007. }
  1008. a::before{
  1009. content: '';display: block;
  1010. position:absolute;left:0px;top:18px;
  1011. background: linear-gradient(to top, #0998A9, #6ADDD6);
  1012. width:3px;height:15px;
  1013. }
  1014. }
  1015. .phone_box_1_img_ul{
  1016. height:55vw;overflow:hidden;margin-top:15px;
  1017. div{width:100%;float:none;height:55vw;border-radius:10px;position:relative;overflow:hidden;}
  1018. a{display:block;width:100%;height:100%;}
  1019. img{display:block;width:100%;height:100%;}
  1020. span{
  1021. position:absolute;width:100%;height:66px;line-height:90px;color:#fff; font-size:16px;
  1022. left:0px;bottom:0px;padding:0px 5%;box-sizing:border-box; display:block;
  1023. background:linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, .5));
  1024. word-break: keep-all; white-space: nowrap;overflow:hidden;text-overflow:ellipsis;
  1025. }
  1026. >div>a:nth-of-type(n+2){display:none;}
  1027. }
  1028. .phone_box_1_ul{
  1029. overflow:hidden;height:123px;margin:15px auto 0px;
  1030. >div{width:100%;height:100%;}
  1031. a{
  1032. width:100%!important;display:block;height:40px;line-height:40px;
  1033. border-bottom:1px solid #E6E6E6;display:block;position:relative;
  1034. word-break: keep-all; white-space: nowrap;overflow:hidden;text-overflow:ellipsis;
  1035. font-size:16px;color:#333;text-indent:18px;
  1036. }
  1037. a::after{
  1038. content: '';display: block;
  1039. position:absolute;left:0px;top:18px;background:#E6E6E6;
  1040. width:6px;height:6px;
  1041. }
  1042. a:nth-of-type(n+4){display:none;}
  1043. }
  1044. }
  1045. .phone_box_2{
  1046. width:92%;margin:0px auto 0px;
  1047. .phone_box_1_head{
  1048. height:50px;line-height:50px;
  1049. background:#fff;border-bottom:1px solid #E6E6E6;
  1050. margin-top:15px;width:100%;
  1051. a{
  1052. float:left;height:50px;line-height:50px;margin:0;position:relative;
  1053. color:#489d97;font-size:18px; font-weight:bold;box-sizing:border-box;
  1054. position:relative;padding-left:8px;
  1055. }
  1056. a::before{
  1057. content: '';display: block;
  1058. position:absolute;left:0px;top:18px;
  1059. background: linear-gradient(to top, #0998A9, #6ADDD6);
  1060. width:3px;height:15px;
  1061. }
  1062. }
  1063. .phone_box_1_img_ul{
  1064. height:55vw;overflow:hidden;margin-top:15px;
  1065. div{width:100%;float:none;height:55vw;border-radius:10px;position:relative;overflow:hidden;}
  1066. a{display:block;width:100%;height:100%;}
  1067. img{display:block;width:100%;height:100%;}
  1068. span{
  1069. position:absolute;width:100%;height:66px;line-height:90px;color:#fff; font-size:16px;
  1070. left:0px;bottom:0px;padding:0px 5%;box-sizing:border-box; display:block;
  1071. background:linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, .5));
  1072. word-break: keep-all; white-space: nowrap;overflow:hidden;text-overflow:ellipsis;
  1073. }
  1074. >div>a:nth-of-type(n+2){display:none;}
  1075. }
  1076. .phone_box_1_ul{
  1077. overflow:hidden;height:123px;margin:15px auto 0px;
  1078. >div{width:100%;height:100%;}
  1079. a{
  1080. width:100%!important;display:block;height:40px;line-height:40px;
  1081. border-bottom:1px solid #E6E6E6;display:block;position:relative;
  1082. word-break: keep-all; white-space: nowrap;overflow:hidden;text-overflow:ellipsis;
  1083. font-size:16px;color:#333;text-indent:18px;
  1084. }
  1085. a::after{
  1086. content: '';display: block;
  1087. position:absolute;left:0px;top:18px;background:#E6E6E6;
  1088. width:6px;height:6px;
  1089. }
  1090. a:nth-of-type(n+4){display:none;}
  1091. }
  1092. }
  1093. .phone_box_3{
  1094. width:92%;margin:0px auto 0px;
  1095. .phone_box_1_head{
  1096. height:50px;line-height:50px;
  1097. background:#fff;border-bottom:1px solid #E6E6E6;
  1098. margin-top:15px;width:100%;
  1099. a{
  1100. float:left;height:50px;line-height:50px;margin:0;position:relative;
  1101. color:#489d97;font-size:18px; font-weight:bold;box-sizing:border-box;
  1102. position:relative;padding-left:8px;
  1103. }
  1104. a::before{
  1105. content: '';display: block;
  1106. position:absolute;left:0px;top:18px;
  1107. background: linear-gradient(to top, #0998A9, #6ADDD6);
  1108. width:3px;height:15px;
  1109. }
  1110. }
  1111. .phone_box_1_img_ul{
  1112. height:55vw;overflow:hidden;margin-top:15px;
  1113. div{width:100%;float:none;height:55vw;border-radius:10px;position:relative;overflow:hidden;}
  1114. a{display:block;width:100%;height:100%;}
  1115. img{display:block;width:100%;height:100%;}
  1116. span{
  1117. position:absolute;width:100%;height:66px;line-height:90px;color:#fff; font-size:16px;
  1118. left:0px;bottom:0px;padding:0px 5%;box-sizing:border-box; display:block;
  1119. background:linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, .5));
  1120. word-break: keep-all; white-space: nowrap;overflow:hidden;text-overflow:ellipsis;
  1121. }
  1122. >div>a:nth-of-type(n+2){display:none;}
  1123. }
  1124. .phone_box_1_ul{
  1125. overflow:hidden;height:123px;margin:15px auto 0px;
  1126. >div{width:100%;height:100%;}
  1127. a{
  1128. width:100%!important;display:block;height:40px;line-height:40px;
  1129. border-bottom:1px solid #E6E6E6;display:block;position:relative;
  1130. word-break: keep-all; white-space: nowrap;overflow:hidden;text-overflow:ellipsis;
  1131. font-size:16px;color:#333;text-indent:18px;
  1132. }
  1133. a::after{
  1134. content: '';display: block;
  1135. position:absolute;left:0px;top:18px;background:#E6E6E6;
  1136. width:6px;height:6px;
  1137. }
  1138. a:nth-of-type(n+4){display:none;}
  1139. }
  1140. }
  1141. .phone_box_4{
  1142. width:92%;margin:0px auto 0px;
  1143. .phone_box_1_head{
  1144. height:50px;line-height:50px;
  1145. background:#fff;border-bottom:1px solid #E6E6E6;
  1146. margin-top:15px;width:100%;
  1147. a{
  1148. float:left;height:50px;line-height:50px;margin:0;position:relative;
  1149. color:#489d97;font-size:18px; font-weight:bold;box-sizing:border-box;
  1150. position:relative;padding-left:8px;
  1151. }
  1152. a::before{
  1153. content: '';display: block;
  1154. position:absolute;left:0px;top:18px;
  1155. background: linear-gradient(to top, #0998A9, #6ADDD6);
  1156. width:3px;height:15px;
  1157. }
  1158. }
  1159. .phone_box_1_img_ul{
  1160. height:55vw;overflow:hidden;margin-top:15px;
  1161. div{width:100%;float:none;height:55vw;border-radius:10px;position:relative;overflow:hidden;}
  1162. a{display:block;width:100%;height:100%;}
  1163. img{display:block;width:100%;height:100%;}
  1164. span{
  1165. position:absolute;width:100%;height:66px;line-height:90px;color:#fff; font-size:16px;
  1166. left:0px;bottom:0px;padding:0px 5%;box-sizing:border-box; display:block;
  1167. background:linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, .5));
  1168. word-break: keep-all; white-space: nowrap;overflow:hidden;text-overflow:ellipsis;
  1169. }
  1170. >div>a:nth-of-type(n+2){display:none;}
  1171. }
  1172. .phone_box_1_ul{
  1173. overflow:hidden;height:123px;margin:15px auto 0px;
  1174. >div{width:100%;height:100%;}
  1175. a{
  1176. width:100%!important;display:block;height:40px;line-height:40px;
  1177. border-bottom:1px solid #E6E6E6;display:block;position:relative;
  1178. word-break: keep-all; white-space: nowrap;overflow:hidden;text-overflow:ellipsis;
  1179. font-size:16px;color:#333;text-indent:18px;
  1180. }
  1181. a::after{
  1182. content: '';display: block;
  1183. position:absolute;left:0px;top:18px;background:#E6E6E6;
  1184. width:6px;height:6px;
  1185. }
  1186. a:nth-of-type(n+4){display:none;}
  1187. }
  1188. }
  1189. .phone_box_5{
  1190. width:92%;margin:0px auto 0px;
  1191. .phone_box_1_head{
  1192. height:50px;line-height:50px;
  1193. background:#fff;border-bottom:1px solid #E6E6E6;
  1194. margin-top:15px;width:100%;
  1195. a{
  1196. float:left;height:50px;line-height:50px;margin:0;position:relative;
  1197. color:#489d97;font-size:18px; font-weight:bold;box-sizing:border-box;
  1198. position:relative;padding-left:8px;
  1199. }
  1200. a::before{
  1201. content: '';display: block;
  1202. position:absolute;left:0px;top:18px;
  1203. background: linear-gradient(to top, #0998A9, #6ADDD6);
  1204. width:3px;height:15px;
  1205. }
  1206. }
  1207. .phone_box_1_img_ul{
  1208. height:55vw;overflow:hidden;margin-top:15px;
  1209. div{width:100%;float:none;height:55vw;border-radius:10px;position:relative;overflow:hidden;}
  1210. a{display:block;width:100%;height:100%;}
  1211. img{display:block;width:100%;height:100%;}
  1212. span{
  1213. position:absolute;width:100%;height:66px;line-height:90px;color:#fff; font-size:16px;
  1214. left:0px;bottom:0px;padding:0px 5%;box-sizing:border-box; display:block;
  1215. background:linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, .5));
  1216. word-break: keep-all; white-space: nowrap;overflow:hidden;text-overflow:ellipsis;
  1217. }
  1218. >div>a:nth-of-type(n+2){display:none;}
  1219. }
  1220. .phone_box_1_ul{
  1221. overflow:hidden;height:123px;margin:15px auto 0px;
  1222. >div{width:100%;height:100%;}
  1223. a{
  1224. width:100%!important;display:block;height:40px;line-height:40px;
  1225. border-bottom:1px solid #E6E6E6;display:block;position:relative;
  1226. word-break: keep-all; white-space: nowrap;overflow:hidden;text-overflow:ellipsis;
  1227. font-size:16px;color:#333;text-indent:18px;
  1228. }
  1229. a::after{
  1230. content: '';display: block;
  1231. position:absolute;left:0px;top:18px;background:#E6E6E6;
  1232. width:6px;height:6px;
  1233. }
  1234. a:nth-of-type(n+4){display:none;}
  1235. }
  1236. }
  1237. .phone_box_6{
  1238. width:92%;margin:0px auto 0px;
  1239. .phone_box_1_head{
  1240. height:50px;line-height:50px;
  1241. background:#fff;border-bottom:1px solid #E6E6E6;
  1242. margin-top:15px;width:100%;
  1243. a{
  1244. float:left;height:50px;line-height:50px;margin:0;position:relative;
  1245. color:#489d97;font-size:18px; font-weight:bold;box-sizing:border-box;
  1246. position:relative;padding-left:8px;
  1247. }
  1248. a::before{
  1249. content: '';display: block;
  1250. position:absolute;left:0px;top:18px;
  1251. background: linear-gradient(to top, #0998A9, #6ADDD6);
  1252. width:3px;height:15px;
  1253. }
  1254. }
  1255. .phone_box_1_img_ul{
  1256. height:55vw;overflow:hidden;margin-top:15px;
  1257. div{width:100%;float:none;height:55vw;border-radius:10px;position:relative;overflow:hidden;}
  1258. a{display:block;width:100%;height:100%;}
  1259. img{display:block;width:100%;height:100%;}
  1260. span{
  1261. position:absolute;width:100%;height:66px;line-height:90px;color:#fff; font-size:16px;
  1262. left:0px;bottom:0px;padding:0px 5%;box-sizing:border-box; display:block;
  1263. background:linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, .5));
  1264. word-break: keep-all; white-space: nowrap;overflow:hidden;text-overflow:ellipsis;
  1265. }
  1266. >div>a:nth-of-type(n+2){display:none;}
  1267. }
  1268. .phone_box_1_ul{
  1269. overflow:hidden;height:123px;margin:15px auto 0px;
  1270. >div{width:100%;height:100%;}
  1271. a{
  1272. width:100%!important;display:block;height:40px;line-height:40px;
  1273. border-bottom:1px solid #E6E6E6;display:block;position:relative;
  1274. word-break: keep-all; white-space: nowrap;overflow:hidden;text-overflow:ellipsis;
  1275. font-size:16px;color:#333;text-indent:18px;
  1276. }
  1277. a::after{
  1278. content: '';display: block;
  1279. position:absolute;left:0px;top:18px;background:#E6E6E6;
  1280. width:6px;height:6px;
  1281. }
  1282. a:nth-of-type(n+4){display:none;}
  1283. }
  1284. }
  1285. .phone_box_7{
  1286. width:92%;margin:0px auto 0px;
  1287. .phone_box_1_head{
  1288. height:50px;line-height:50px;
  1289. background:#fff;border-bottom:1px solid #E6E6E6;
  1290. margin-top:15px;width:100%;
  1291. a{
  1292. float:left;height:50px;line-height:50px;margin:0;position:relative;
  1293. color:#489d97;font-size:18px; font-weight:bold;box-sizing:border-box;
  1294. position:relative;padding-left:8px;
  1295. }
  1296. a::before{
  1297. content: '';display: block;
  1298. position:absolute;left:0px;top:18px;
  1299. background: linear-gradient(to top, #0998A9, #6ADDD6);
  1300. width:3px;height:15px;
  1301. }
  1302. }
  1303. .phone_box_1_img_ul{
  1304. height:55vw;overflow:hidden;margin-top:15px;
  1305. div{width:100%;float:none;height:55vw;border-radius:10px;position:relative;overflow:hidden;}
  1306. a{display:block;width:100%;height:100%;}
  1307. img{display:block;width:100%;height:100%;}
  1308. span{
  1309. position:absolute;width:100%;height:66px;line-height:90px;color:#fff; font-size:16px;
  1310. left:0px;bottom:0px;padding:0px 5%;box-sizing:border-box; display:block;
  1311. background:linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, .5));
  1312. word-break: keep-all; white-space: nowrap;overflow:hidden;text-overflow:ellipsis;
  1313. }
  1314. >div>a:nth-of-type(n+2){display:none;}
  1315. }
  1316. .phone_box_1_ul{
  1317. overflow:hidden;height:123px;margin:15px auto 0px;
  1318. >div{width:100%;height:100%;}
  1319. a{
  1320. width:100%!important;display:block;height:40px;line-height:40px;
  1321. border-bottom:1px solid #E6E6E6;display:block;position:relative;
  1322. word-break: keep-all; white-space: nowrap;overflow:hidden;text-overflow:ellipsis;
  1323. font-size:16px;color:#333;text-indent:18px;
  1324. }
  1325. a::after{
  1326. content: '';display: block;
  1327. position:absolute;left:0px;top:18px;background:#E6E6E6;
  1328. width:6px;height:6px;
  1329. }
  1330. a:nth-of-type(n+4){display:none;}
  1331. }
  1332. }
  1333. .phone_box_8{
  1334. width:92%;margin:0px auto 0px;
  1335. .phone_box_1_head{
  1336. height:50px;line-height:50px;
  1337. background:#fff;border-bottom:1px solid #E6E6E6;
  1338. margin-top:15px;width:100%;
  1339. a{
  1340. float:left;height:50px;line-height:50px;margin:0;position:relative;
  1341. color:#489d97;font-size:18px; font-weight:bold;box-sizing:border-box;
  1342. position:relative;padding-left:8px;
  1343. }
  1344. a::before{
  1345. content: '';display: block;
  1346. position:absolute;left:0px;top:18px;
  1347. background: linear-gradient(to top, #0998A9, #6ADDD6);
  1348. width:3px;height:15px;
  1349. }
  1350. }
  1351. .phone_box_1_img_ul{
  1352. height:55vw;overflow:hidden;margin-top:15px;
  1353. div{width:100%;float:none;height:55vw;border-radius:10px;position:relative;overflow:hidden;}
  1354. a{display:block;width:100%;height:100%;}
  1355. img{display:block;width:100%;height:100%;}
  1356. span{
  1357. position:absolute;width:100%;height:66px;line-height:90px;color:#fff; font-size:16px;
  1358. left:0px;bottom:0px;padding:0px 5%;box-sizing:border-box; display:block;
  1359. background:linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, .5));
  1360. word-break: keep-all; white-space: nowrap;overflow:hidden;text-overflow:ellipsis;
  1361. }
  1362. >div>a:nth-of-type(n+2){display:none;}
  1363. }
  1364. .phone_box_1_ul{
  1365. overflow:hidden;height:123px;margin:15px auto 0px;
  1366. >div{width:100%;height:100%;}
  1367. a{
  1368. width:100%!important;display:block;height:40px;line-height:40px;
  1369. border-bottom:1px solid #E6E6E6;display:block;position:relative;
  1370. word-break: keep-all; white-space: nowrap;overflow:hidden;text-overflow:ellipsis;
  1371. font-size:16px;color:#333;text-indent:18px;
  1372. }
  1373. a::after{
  1374. content: '';display: block;
  1375. position:absolute;left:0px;top:18px;background:#E6E6E6;
  1376. width:6px;height:6px;
  1377. }
  1378. a:nth-of-type(n+4){display:none;}
  1379. }
  1380. }
  1381. .phone_none{display:none;}
  1382. }
  1383. </style>