editProMobile.html 30 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, minimal-ui">
  6. <meta http-equiv="X-UA-Compatible" content="ie=edge">
  7. <meta name="apple-mobile-web-app-capable" content="yes">
  8. <meta name="browsermode" content="application">
  9. <meta name="full-screen" content="yes">
  10. <script src="static/lib/jquery-2.1.1.min.js"></script>
  11. <script src="static/lib/jquery.ajax.arraybuffer.min.js"></script>
  12. <script src="static/lib/bytebuffer.min.js"></script>
  13. <script src="static/lib/protobuf.min.js"></script>
  14. <script src="static/lib/base64.min.js"></script>
  15. <script src="static/lib/Tween.js"></script>
  16. <script src="static/lib/events.js"></script>
  17. <script src="static/lib/three95.min.js"></script>
  18. <script src="static/lib/howler.min.js"></script>
  19. <!--REVISION: "95"-->
  20. <!-- <script src="static/lib/postprocessing/EffectComposer.js"></script> -->
  21. <script src="static/lib/postprocessing/MaskPass.js"></script>
  22. <script src="static/lib/postprocessing/RenderPass.js"></script>
  23. <script src="static/lib/postprocessing/ShaderPass.js"></script>
  24. <script src="static/lib/DetectBrowser.js"></script>
  25. <title>四维看看编辑器</title>
  26. <style>
  27. .hide {
  28. display: none !important
  29. }
  30. #consoleLog{
  31. width: 120px;
  32. height: 153px;
  33. position: absolute;
  34. left: 0px;
  35. bottom: 160px;
  36. z-index: 999999;
  37. color: black;
  38. opacity: 0.9;
  39. font-size: 12px;
  40. }
  41. </style>
  42. <script>
  43. window.edit = true;
  44. window.isMobile = isMobilePcForEdit()==1;
  45. if(window.location.href.substring(0,5)!="https" && window.location.href.indexOf("&test")==-1){
  46. window.location.href = window.location.href.replace('http','https');
  47. }
  48. if(!isMobile){
  49. var a = window.location.href.indexOf(".html");
  50. var postfix = window.location.href.substring(a+5);
  51. window.location.href = "editProPC.html"+postfix;
  52. }
  53. </script>
  54. <link rel="stylesheet" href="static/css/base.css"><!-- 公用 -->
  55. <link rel="stylesheet" href="static/css/mainApp.css">
  56. <link rel="stylesheet" href="static/css/icon/iconfont.css">
  57. <link rel="stylesheet" href="static/css/toolBoxApp.css">
  58. <link rel="stylesheet" href="static/css/swiper-4.3.5.min.css">
  59. <link rel="stylesheet" href="static/css/cropper.min.css">
  60. <link rel="stylesheet" href="static/css/rulerLabel.css">
  61. <link rel="shortcut icon" href="https://4dkk.4dage.com/FDKKIMG/icon/kankan_icon.ico">
  62. <link rel="icon" type="image/png" href="https://4dkk.4dage.com/FDKKIMG/icon/kankan_icon192.png" sizes="192x192">
  63. <link rel="apple-touch-icon" sizes="180x180" href="https://4dkk.4dage.com/FDKKIMG/icon/kankan_icon180.png">
  64. </head>
  65. <body class="mobile edit">
  66. <div id="BGcover" class='hide' style="background:#fff; position:fixed; height:400%;width:100%;top:-150%;"></div>
  67. <div id="gui-thumb" style="display: none;"></div>
  68. <div id="webgl">
  69. <div id="addSpot" class=""> <!-- 热点编辑 -->
  70. <div id="playerB" class="view">
  71. </div>
  72. </div>
  73. <div class="webgl-inside">
  74. <div id="player" style="display: none;"></div>
  75. <div id="mainDesignSth">
  76. <!-- <div class="wallDesignOption" id="mainLabel"></div> -->
  77. <div class="rulerAndLabel">
  78. <div class="rulers hide"> </div>
  79. <div class="dollLabels hide"> </div>
  80. <div class="planLabels hide"> </div>
  81. </div>
  82. </div>
  83. <div id="gui-parent">
  84. <div id="mediaUpOut" class="hide">
  85. <div id="mediaUp"></div>
  86. </div>
  87. <div id="videoPlayer" class="hide">
  88. <div class="overlay"></div>
  89. <div class="close icon_close"></div>
  90. </div>
  91. <div id='tryPlay'></div>
  92. <div class="snapshotFlash"></div>
  93. <div class="reciprocal hide">
  94. <span></span>
  95. </div>
  96. <div id="bottChoseList" class='bottSlideUp hide'>
  97. <div>
  98. <ul></ul><ul><li class="cancel">取消</li></ul>
  99. </div>
  100. </div>
  101. <div id="tourSnap" class="hide">新增导览</div>
  102. <!-- 询问框 -->
  103. <div class="dialog_box Box hide">
  104. <div>
  105. <div class="icon"></div>
  106. <div class="tips">
  107. <div class="title"></div>
  108. <div class="content"></div>
  109. </div>
  110. <div class="buttons">
  111. <button type="cancel">取消</button>
  112. <button type="submit">确定</button>
  113. </div>
  114. </div>
  115. </div>
  116. <div id="hotspot" class="">
  117. <div class="staticSpot hide">
  118. <div class="inside"></div>
  119. <div class="point"></div>
  120. <div class="around">
  121. <div class="iconfont icon_top"></div>
  122. <div class="iconfont icon_top"></div>
  123. <div class="iconfont icon_top"></div>
  124. <div class="iconfont icon_top"></div>
  125. </div>
  126. </div>
  127. <div class="rulers hide"> </div>
  128. <div class="dollLabels hide"> </div>
  129. <div class="planLabels hide"> </div>
  130. <div class="doors hide"> </div>
  131. </div>
  132. <div class="snapshotGui overlayGui hide">
  133. <div class="corner leftTop"></div>
  134. <div class="corner rightTop"></div>
  135. <div class="corner leftBott"></div>
  136. <div class="corner rightBott"></div>
  137. </div>
  138. <div id="memory-info" style="display:none; position:fixed; right:10px; top:10px; background-color:#eeeeee; color:#222222; padding:3px 10px 3px 10px; font-size:100%;">
  139. GPU memory used: <span id="memory-gpu"></span>
  140. </div>
  141. <div id="gui-loading" class="message-outer darkGlass2" style="z-index: 888;">
  142. <div class="message-inner">
  143. <!-- <div id="circleLoader">
  144. <div id="loader-cont" title="{[{ LOADING }]}">
  145. <svg id="svg" width="100" height="100" viewport="0 0 100 100" version="1.1" xmlns="https://www.w3.org/2000/svg">
  146. <circle id="barBg" r="47" cx="50" cy="50" fill="transparent" stroke-dasharray="565.48" stroke-dashoffset="0"></circle>
  147. <circle id="bar" r="47" cx="50" cy="50" transform="rotate(-90 50 50)" fill="transparent" stroke-dasharray="295.30" stroke-dashoffset="295.30" style="stroke-dashoffset : 295.30"></circle>
  148. </svg>
  149. </div>
  150. </div> -->
  151. <div class="loadingLogo">
  152. <div class="img">
  153. <i class="iconfont icon_logo"></i>
  154. </div>
  155. <h2 class="model-title">四维看看</h2>
  156. </div>
  157. <div id="loadProgress">
  158. <div class="progressInside"></div>
  159. </div>
  160. <!-- <div id="loaderCoBrand" style="display:none">
  161. <div class="vert-align">
  162. <p>{[{ PRESENTED_BY_CAPS }]}</p>
  163. <h2 id="loaderCoBrandName"></h2>
  164. </div>
  165. </div> -->
  166. <div class="bottom-logo">
  167. <div class="img">
  168. <i class="iconfont icondkkr"></i>
  169. </div>
  170. </div>
  171. <div class="specialPower" style="display:none">
  172. <!-- <span class="powered-by">{[{ POWERED_BY }]}</span>
  173. &#xA0;<div class="img"></div> -->
  174. </div>
  175. </div>
  176. </div>
  177. <div id="gui" style="display: none;">
  178. <div class="pinBottom-container">
  179. <div class="pinBottom center hide">
  180. <div id="view-controllers">
  181. <div id="gui-modes-dollhouse" class="darkGlass">
  182. <span class="mode">{[{ DOLLHOUSE }]}</span>
  183. </div>
  184. <div id="gui-modes-floorplan" class="darkGlass">
  185. <span class="mode">{[{ FLOOR_PLAN }]}</span>
  186. </div>
  187. </div>
  188. </div>
  189. <div class="pinBottom zoomPanel hide">
  190. <div id="gui-zoomin" class="buttonZoom buttonZoomIn buttonZoomEnabled" data-placement="top">
  191. <div class="buttonZoomContent">
  192. <a>
  193. <i rel="tooltip" title="{[{ ZOOM_IN }]}" class="icon icon-plus"></i>
  194. </a>
  195. </div>
  196. </div>
  197. <div id="gui-zoomout" class="buttonZoom buttonZoomOut buttonZoomEnabled" data-placement="top">
  198. <div class="buttonZoomContent">
  199. <a>
  200. <i rel="tooltip" title="{[{ ZOOM_OUT }]}" class="icon icon-minus"></i>
  201. </a>
  202. </div>
  203. </div>
  204. </div>
  205. <div class="pinBottom left hide">
  206. <div class="viewContainer">
  207. <div id="pullTab" class="ui-icon darkGlass">
  208. <a>
  209. <i rel="tooltip" title="{[{ OPEN_HIGHLIGHTS }]}" class="icon icon-dpad-up"></i>
  210. </a>
  211. </div>
  212. <div id="previous" class="previous desktop-only ui-icon tour">
  213. <a>
  214. <i rel="tooltip" title="{[{ PREVIOUS }]}" class="icon icon-dpad-left"></i>
  215. </a>
  216. </div>
  217. <div id="play" class="ui-icon tour">
  218. <a>
  219. <i rel="tooltip" title="{[{ PLAY }]}" class="icon icon-play"></i>
  220. </a>
  221. </div>
  222. <div id="pause" class="ui-icon tour" style="display: none;">
  223. <a>
  224. <i rel="tooltip" title="{[{ PAUSE }]}" class="icon icon-pause"></i>
  225. </a>
  226. </div>
  227. <div id="next" class="next desktop-only ui-icon wide tour">
  228. <a>
  229. <i rel="tooltip" title="{[{ NEXT }]}" class="icon icon-dpad-right"></i>
  230. </a>
  231. </div>
  232. <div id="gui-modes-inside" class="ui-icon hide">
  233. <a>
  234. <i rel="tooltip" title="{[{ EXPLORE_3D_SPACE }]}" class="icon icon-inside"></i>
  235. </a>
  236. </div>
  237. <div id="gui-modes-outside" class="ui-icon hide">
  238. <a>
  239. <i rel="tooltip" title="{[{ VIEW_DOLLHOUSE }]}" class="icon icon-dollhouse"></i>
  240. </a>
  241. </div>
  242. </div>
  243. </div>
  244. <div class="pinBottom right hideTarget">
  245. <div class="rightViewContainer">
  246. <div class="gui-floor">
  247. <div class="gui-floor-title"></div>
  248. <span class="gui-floor-number"></span>
  249. <i class="icon icon-dpad-up"></i>
  250. <div class="container"></div>
  251. </div>
  252. <!--<div id="vr" class="ui-icon wide hidden">
  253. <a>
  254. <i rel="tooltip" title="{[{ VIEW_IN_VR }]}" class="icon icon-webvr"></i>
  255. </a>
  256. </div>
  257. <div id="sharing" class="ui-icon wide hidden hide">
  258. <a>
  259. <i rel="tooltip" title="{[{ SOCIAL_SHARING }]}" class="icon icon-share"></i>
  260. </a>
  261. </div>-->
  262. <div id="gui-fullscreen" class="ui-icon wide hide" data-placement="top">
  263. <a>
  264. <i rel="tooltip" title="{[{ VIEW_FULLSCREEN }]}" class="icon icon-fullscreen"></i>
  265. </a>
  266. </div>
  267. <div id="gui-fullscreen-exit" class="ui-icon wide hide" data-placement="top" style="display: none;">
  268. <a>
  269. <i rel="tooltip" title="{[{ EXIT_FULLSCREEN }]}" class="icon icon-fullscreen-exit"></i>
  270. </a>
  271. </div>
  272. <!-- <div class="pull-right terms terms2">
  273. <a>{[{ TERMS }]}</a>
  274. </div> -->
  275. </div>
  276. </div>
  277. </div>
  278. <div id="drawer-container">
  279. <div id="drawer" class="fullWidth">
  280. <div class="frame-container darkGlass">
  281. <div id="scrollFrame" class="frame">
  282. <ul id="thumb-container" class="slidee"></ul>
  283. </div>
  284. <div class="scrollbar" id="scroller">
  285. <div class="handle"></div>
  286. </div>
  287. </div>
  288. </div>
  289. <div id="playHead">
  290. <div id="status">
  291. <span class="curIdx">1</span>
  292. of <span class="totalSteps"></span>
  293. </div>
  294. <div id="progressBar"></div>
  295. </div>
  296. </div>
  297. <!-- <div class="footer hide">
  298. <div class="standard">
  299. <div class="footer-help">
  300. <a class="hasHover">{[{ HELP }]}</a>
  301. </div>
  302. <div>|</div>
  303. <div class="footer-terms">
  304. <a class="hasHover">{[{ 4DAGE_TERMS }]}</a>
  305. </div>
  306. <img src="images/glyph.svg">
  307. </div>
  308. <div class="close">
  309. <a class="hasHover">{[{ CLOSE }]}</a>
  310. </div>
  311. </div> -->
  312. </div>
  313. <div id="gui-spinner" style="display: none;">
  314. <div class="gui-spinner-icon"></div>
  315. </div>
  316. <div class="gui-error message-outer" style="display: none;">
  317. <div class="message-inner">
  318. <div class="message-content">
  319. <div class="error-problem-text"></div>
  320. <div class="error-solution-text"></div>
  321. <div class="error-explanation"></div>
  322. <div class="error-actions"></div>
  323. </div>
  324. </div>
  325. </div>
  326. <!-- <div id="quick-blackout" class="quick hide"></div> -->
  327. <div id="quick-logo" class="quick-brand">
  328. <!-- <img src="images/powered-by-4dage.svg"> -->
  329. </div>
  330. <div id="hover-top" class="hover-row"></div>
  331. <div id="hover-bottom" class="hover-row"></div>
  332. <div id="call-to-action">
  333. <div id="pause-overlay">
  334. <div id="pause-icon">
  335. <a>
  336. <i class="icon icon-pause"></i>
  337. </a>
  338. </div>
  339. </div>
  340. <div id="interaction-modal">
  341. <div id="interaction-modal-inner">
  342. <div class="tour-title">
  343. <span class="desktop-title">{[{ DESKTOP_SHORT_CTA }]}</span>
  344. <span class="mobile-title">{[{ MOBILE_SHORT_CTA }]}</span>
  345. </div>
  346. <div class="interaction left">
  347. <h2 class="top-info"></h2>
  348. <img class="big-image">
  349. <hr>
  350. <img class="keyboard">
  351. </div>
  352. <div class="interaction middle">
  353. <h2 class="top-info"></h2>
  354. <img class="big-image">
  355. <hr>
  356. <img class="keyboard">
  357. </div>
  358. <div class="interaction right">
  359. <h2 class="top-info"></h2>
  360. <img class="big-image">
  361. <hr>
  362. <img class="keyboard">
  363. </div>
  364. </div>
  365. </div>
  366. </div>
  367. <div id="tag-billboards"></div>
  368. </div>
  369. </div>
  370. <!--[if lte IE 9]>
  371. <div class="gui-error message-outer">
  372. <div class='message-inner'>
  373. <div class='message-content' style='font-family: Helvetica Neue, sans-serif;'>
  374. <div class="error-problem-text">浏览器不支持.</div>
  375. <div class="error-solution-text">请安装最新版本的浏览器.</div>
  376. <div class="error-actions">
  377. </div>
  378. </div>
  379. </div>
  380. </div>
  381. <![endif]-->
  382. </div>
  383. <!-- 以上是webgl展示部分,以下是编辑页面部分 -->
  384. <div class="resultBox hide">
  385. <!--提示框 -->
  386. <div>保存成功!</div>
  387. </div>
  388. <div class="waiting">
  389. <div class="spinner">
  390. <div class="bounce1"></div>
  391. <div class="bounce2"></div>
  392. <div class="bounce3"></div>
  393. </div>
  394. <div class="text">请等待...</div>
  395. </div>
  396. <div id="back" class="hide circle"><i class="iconfont icon_back"></i></div>
  397. <div id="app">
  398. <div id="map" class="">
  399. <canvas class="canvas-minmap" id="miniMap" width="100" height="100"></canvas>
  400. <canvas class="canvas-minmap" id="playMap" width="100" height="100"></canvas>
  401. </div>
  402. <header>
  403. <!-- <a class="btn-left circle"></a> -->
  404. <div id="j-header-dropdown" href="javascript:;" class="btn-center">
  405. <i class="typeLogo iconfont "></i>
  406. <span id="j-header-scenename">四维看看</span>
  407. <i id="j-header-arrow"></i>
  408. <div class="desc">
  409. <i></i>
  410. <div>
  411. <h4 id="j-header-scenetitle"></h4>
  412. <div id="j-header-scenedesc"></div>
  413. </div>
  414. </div>
  415. </div>
  416. <a class="btn-right circle save"><i class="iconfont icon_save"></i></a>
  417. </header>
  418. <nav>
  419. <ul>
  420. <li>
  421. <span data-type="dollhouse" class="_3d"><i class="icon_3d iconfont"></i></span>
  422. <label>3D</label>
  423. </li>
  424. <li>
  425. <span data-type="floorplan" class="_2d "><i class="icon_2d iconfont"></i></span>
  426. <label>2D</label>
  427. </li>
  428. <li>
  429. <span data-type="panorama" class="_roam"><i class="icon_tour iconfont"></i></span>
  430. <label>漫游</label>
  431. </li>
  432. </ul>
  433. </nav>
  434. <footer>
  435. <div>
  436. <!-- 菜单 -->
  437. <div class="footer-tmpl tmpl-menu">
  438. <div class="layout">
  439. <ul>
  440. <li data-name="information">
  441. <span class="information"><i class="iconfont icon_information"></i></span>
  442. <label>场景信息</label>
  443. </li>
  444. <li data-name="screen">
  445. <span class="screen"><i class="iconfont icon_screen"></i></span>
  446. <label>初始画面</label>
  447. </li>
  448. <li data-name="hotpoint.step-1">
  449. <span class="hotpoint"><i class="iconfont icon_hotpoint"></i></span>
  450. <label>添加热点</label>
  451. </li>
  452. <!-- <li data-name="lock">
  453. <span class="lock"><i class="iconfont icon_lock"></span>
  454. <label>隐私权限</label>
  455. </li> -->
  456. <li data-name="music">
  457. <span class="music"><i class="iconfont icon_music"></i></span>
  458. <label>背景音乐</label>
  459. </li>
  460. <li data-name="snapTour.step-1">
  461. <span class="snapTour"><i class="iconfont icon_auto"></i></span>
  462. <label>自动导览</label>
  463. </li>
  464. <li data-name="sign">
  465. <span class="sign"><i class="iconfont icon_sign"></i></span>
  466. <label>地面Logo</label>
  467. </li>
  468. <li data-name="wallDesign" class="hide">
  469. <span class="wallDesign"><i class="iconfont icon_edit"></i></span>
  470. <label>修整模型</label>
  471. </li>
  472. <!-- <li data-name="hotVisible">
  473. <span class="hotVisible"><i class="iconfont icon_eye"></i></span>
  474. <label>热点可视</label>
  475. </li>
  476. <li data-name="panoVisible">
  477. <span class="panoVisible"><i class="iconfont icon_walk"></i></span>
  478. <label>漫游可行</label>
  479. </li> -->
  480. </ul>
  481. </div>
  482. </div>
  483. <div class="footer-tmpl tmpl-hotEdit buttons" style="display: none">
  484. <div class="layout">
  485. <div class="buttons">
  486. <button type="delete">删除</button>
  487. <button type="change">修改</button>
  488. </div>
  489. </div>
  490. </div>
  491. <!-- 编辑模型 -->
  492. <div class="footer-tmpl tmpl-wallDesign" data-layout="" style="display: none">
  493. <div class="layout" data-type="main">
  494. <div id="objProp" class="hide">
  495. <div id="objWidth">
  496. <div class="title">门宽度</div>
  497. <div class="scrollCon">
  498. <div class="hasValue"></div>
  499. </div>
  500. <button class="rectBtn" attr-type="del">删除</button>
  501. </div>
  502. <div id="objHeightOrDepth">
  503. <div class="title">门高度</div>
  504. <div class="scrollCon">
  505. <div class="hasValue"></div>
  506. </div>
  507. <button class="rectBtn" attr-type="done">确定</button>
  508. </div>
  509. </div>
  510. <div id="lineProp" class='hide'>
  511. <ul class="chose" id="architecture">
  512. <li attr-type="door">
  513. <div><i class="iconfont icon_door"></i></div><span>门</span>
  514. </li>
  515. <li attr-type="window">
  516. <div><i class="iconfont icon_window"></i></div><span>窗户</span>
  517. </li>
  518. <li attr-type="column">
  519. <div><i class="iconfont icon_column"></i></div><span>柱子</span>
  520. </li>
  521. <li attr-type="point">
  522. <div><i class="iconfont icon_point"></i></div><span>点</span>
  523. </li>
  524. </ul>
  525. <button class="rectBtn">确定</button>
  526. </div>
  527. <div id="houseHeight">
  528. <div>
  529. <div class="title"> 地面高度 </div>
  530. <div class="scrollCon">
  531. <div id="floorHeight" class="hasValue"></div>
  532. </div>
  533. </div>
  534. <div>
  535. <div class="title"> 屋顶高度 </div>
  536. <div class="scrollCon">
  537. <div id="ceilHeight" class="hasValue"></div>
  538. </div>
  539. </div>
  540. </div>
  541. <div id="roomList" class='hide'>
  542. <div class="swiper-container room-preview-rooms">
  543. <div class="swiper-wrapper">
  544. </div>
  545. <div class="swiper-scrollbar room-preview-rooms-scrollbar"></div>
  546. </div>
  547. </div>
  548. <div class="buttons" data-name="wallDesign">
  549. <button type="button">返回主界面</button>
  550. <button type="submit" class="unable">保存</button>
  551. </div>
  552. </div>
  553. <div class="layout hide" id="roomProp">
  554. <div>
  555. <div>
  556. <div class="title">房间名字</div>
  557. <div class='name'>
  558. <input id="roomName" spellcheck="false" class="right" type="text" minlength="1" maxlength="15" placeholder="限15字" >
  559. </div>
  560. <div class="tip">限定15字以内</div>
  561. </div>
  562. <div>
  563. <div class="title">显示名称</div>
  564. <div class="switch" data-name="nameDisplay"><div></div></div>
  565. <div class="title">显示面积</div>
  566. <div class="switch" data-name="areaDisplay"><div></div></div>
  567. </div>
  568. </div>
  569. <div>
  570. <div id="localBottom">
  571. <div class="title"> 房间地面 </div>
  572. <div class="scrollCon">
  573. <div id="roomFloorHeight" class="hasValue"></div>
  574. </div>
  575. </div>
  576. <div id="localTop">
  577. <div class="title"> 房间屋顶 </div>
  578. <div class="scrollCon">
  579. <div id="roomCeilHeight" class="hasValue"></div>
  580. </div>
  581. </div>
  582. </div>
  583. <div class="buttons">
  584. <button type="submit">确定</button>
  585. </div>
  586. </div>
  587. </div>
  588. <!-- 热点 -->
  589. <div class="footer-tmpl tmpl-hotpoint step-1" style="display: none">
  590. <div class="layout">
  591. <div class="tips center">选择热点,将上方热点对准所需标记的位置</div>
  592. <div class="icons swiper-container">
  593. <div class="swiper-wrapper"> </div>
  594. </div>
  595. <div class="buttons" data-name="hotpoint.step-1">
  596. <button type="button">取消</button>
  597. <button type="submit">确定</button>
  598. </div>
  599. </div>
  600. </div>
  601. <!-- 热点步奏2 -->
  602. <div class="footer-tmpl tmpl-hotpoint step-2" data-layout="" style="display: none">
  603. <div class="layout">
  604. <div class="tips center">拖动滑块、根据绿色阴影调整热点位置</div>
  605. <div class="slideCtrl"> </div>
  606. <div class="buttons" data-name="hotpoint.step-2" data-next="">
  607. <button type="preStep">上一步</button>
  608. <button type="submit">确定</button>
  609. </div>
  610. </div>
  611. </div>
  612. <!-- 热点步奏3 -->
  613. <div class="footer-tmpl tmpl-hotpoint step-3" style="display: none">
  614. <div class="layout">
  615. <div class="tips">标题</div>
  616. <div class="word">
  617. <input class="title" type="text" placeholder="请输入您的标题" maxlength="15">
  618. <div class="warn hide">请添加标题(15字以内)</div>
  619. </div>
  620. <!-- <textarea class="desc" placeholder="请输入您的简介" maxlength="200"></textarea> -->
  621. <div class="tips">内容简介</div>
  622. <div class="textArea desc" contenteditable="true" placeholder="请输入您的简介" maxlength="200"></div>
  623. <div class="tips">添加链接</div>
  624. <div class="link">
  625. <input class="text" type="text" placeholder="添加链接文本" maxlength="40">
  626. <input class="url" type="text" placeholder="添加链接地址" maxlength="500">
  627. <a class="submit">添加</a>
  628. <a class="button">取消</a>
  629. </div>
  630. <div class="tips">添加图片</div>
  631. <div class="photo">
  632. <input id="spot_photo" class="mediaInput" type="file" style="display:none" accept="image/*">
  633. <div for="spot_photo" class="preview">
  634. 添加图片
  635. </div>
  636. <!-- <a class="del hide"></a> -->
  637. </div>
  638. <div class="tips">添加音频</div>
  639. <div class="audio">
  640. <div class="textArea">无</div>
  641. <a class="submit">上传音频</a>
  642. </div>
  643. <div class="tips">添加视频</div>
  644. <div class="video">
  645. <input id="spot_video" class="mediaInput" type="file" style="display:none" accept="video/*">
  646. <div for="spot_video" class="preview">
  647. <!-- <div class="playBtn"><span></span></div> -->
  648. <span class='text'>添加视频</span>
  649. </div>
  650. <!-- <a class="del hide"></a> -->
  651. </div>
  652. <div class="buttons whiteBG" data-name="hotpoint.step-3">
  653. <span class="tips hide" style="padding-top: 0; display:block; line-height: 0.8rem;">旧版热点仅能修改展示信息,无法修改位置</span>
  654. <button type="button" class="hide">取消</button>
  655. <button type="preStep">上一步</button>
  656. <button type="submit">保存</button>
  657. </div>
  658. </div>
  659. </div>
  660. <!-- 初始画面 -->
  661. <div class="footer-tmpl tmpl-screen" style="display: none">
  662. <div class="layout">
  663. <div class="tips center">移动屏幕,点击确定选择您的初始画面</div>
  664. <div class="buttons" data-name="screen">
  665. <button type="button">取消</button>
  666. <button type="submit">确定</button>
  667. </div>
  668. </div>
  669. </div>
  670. <!-- 场景信息 -->
  671. <div class="footer-tmpl tmpl-information" style="display: none">
  672. <div class="layout">
  673. <div class="tips">填写您项目的场景信息</div>
  674. <div class="word">
  675. <input class="title" type="text" placeholder="请输入您的标题" maxlength="15" spellcheck="false">
  676. <div class="warn hide">请添加标题(15字以内)</div>
  677. </div>
  678. <!-- <textarea class="desc" placeholder="请输入简介" maxlength="200"></textarea> -->
  679. <div contenteditable="true" placeholder="请输入简介" class="desc" maxlength="200"></div>
  680. <div class="link">
  681. <input class="text" type="text" placeholder="添加链接文本" maxlength="40">
  682. <input class="url" type="text" placeholder="添加链接地址" maxlength="500">
  683. <a class="submit">添加</a>
  684. <a class="button">取消</a>
  685. </div>
  686. <!-- <div class="limit">(&nbsp;
  687. <label>0</label>/200&nbsp;)</div> -->
  688. <div class="tips">请选择分类</div>
  689. <div class="categorys">
  690. </div>
  691. <div class="lock">
  692. <div>
  693. <div class="tips">隐私权限</div>
  694. <div class="switch">
  695. <div></div>
  696. </div>
  697. </div>
  698. <div class="word" style='opacity:0; pointer-events:none'>
  699. <input type="text" maxlength="4" placeholder="4位数字或字母">
  700. <!--4位字母或数字 -->
  701. <div class="warn hide">请输入4位数的密码</div>
  702. </div>
  703. </div>
  704. <div class="buttons" data-name="information">
  705. <button type="button">取消</button>
  706. <button type="submit">确定</button>
  707. </div>
  708. </div>
  709. </div>
  710. <!-- 选择音乐 -->
  711. <div class="footer-tmpl tmpl-music" style="display: none">
  712. <div class="layout">
  713. <div class="tips">选择音乐
  714. <span class="right">无音乐</span>
  715. </div>
  716. <ul class="chose"></ul>
  717. <div class="buttons" data-name="music">
  718. <button type="button">取消</button>
  719. <button type="submit">确定</button>
  720. </div>
  721. </div>
  722. </div>
  723. <!-- 地面标志 -->
  724. <div class="footer-tmpl tmpl-sign" style="display: none">
  725. <img class="icon">
  726. <div class="layout">
  727. <div class="tips">
  728. 标志样式
  729. <span class="right">修改</span>
  730. </div>
  731. <ul class="chose">
  732. <li><span></span></li>
  733. <li><span></span></li>
  734. <li><span></span></li>
  735. <li><span></span></li>
  736. </ul>
  737. <div class="clear"></div>
  738. <div class="size">
  739. <span>标志大小</span>
  740. <div id="floorLogoSize"> </div>
  741. </div>
  742. <div class="buttons" data-name="sign">
  743. <button type="button" @click="close">取消</button>
  744. <button type="submit" @click="save">确定</button>
  745. </div>
  746. </div>
  747. </div>
  748. <!-- 热点可视 -->
  749. <div class="footer-tmpl tmpl-hotVisible" style="display: none">
  750. <div class="layout">
  751. <div class="tips center"> 点击选择要设置的热点</div>
  752. <div class="buttons" data-name="hotVisible">
  753. <button type="button">取消</button>
  754. <button type="submit">确定</button>
  755. </div>
  756. </div>
  757. </div>
  758. <div class="footer-tmpl tmpl-panoVisible" style="display: none">
  759. <div class="layout">
  760. <div class="tips center">点击漫游点可以设置和中心漫游点是否通行</div>
  761. <div class="buttons" data-name="panoVisible">
  762. <button type="button">取消</button>
  763. <button type="submit">确定</button>
  764. </div>
  765. </div>
  766. </div>
  767. <!-- 录制 -->
  768. <div class="footer-tmpl tmpl-snapTour step-1" style="display: none">
  769. <div class="layout">
  770. <div class="tips center">点击确定开始录制导览</div>
  771. <div class="buttons" data-name="snapTour.step-1">
  772. <button type="button">取消</button>
  773. <button type="submit">确定</button>
  774. </div>
  775. </div>
  776. </div>
  777. <div class="footer-tmpl tmpl-snapTour step-2" style="display: none">
  778. <div class="layout">
  779. <div class="tips center"><i></i><span class="times">00:00</span></div>
  780. <div class="buttons" data-name="snapTour.step-2">
  781. <button type="button">取消</button>
  782. <button type="submit">完成录制</button>
  783. </div>
  784. </div>
  785. </div>
  786. <!-- 删除 -->
  787. <div class="footer-tmpl tmpl-delete" style="display: none">
  788. <div class="layout">
  789. <div class="tips center"></div>
  790. <small class="tips center">(该场景数据将被删除,不可恢复。)</small>
  791. <div class="buttons" data-name="delete">
  792. <button type="button">取消</button>
  793. <button type="submit">确定</button>
  794. </div>
  795. </div>
  796. </div>
  797. </div>
  798. </footer>
  799. <!-- 隐私权限 -->
  800. <div class="footer-tmpl tmpl-lock Box" style="display: none">
  801. <div>
  802. <div class="icon"></div>
  803. <div class="psd">
  804. <input type="text" maxlength="4">
  805. <ul>
  806. <!-- <li><input type="text" maxlength="1" ></li>
  807. <li><input type="text" maxlength="1"></li>
  808. <li><input type="text" maxlength="1"></li>
  809. <li><input type="text" maxlength="1"></li> -->
  810. <li></li>
  811. <li></li>
  812. <li></li>
  813. <li></li>
  814. </ul>
  815. </div>
  816. <div class="tips">请设置您的加密密码</div>
  817. <div class="buttons" data-name="lock">
  818. <button type="cancelPsd">取消加密</button>
  819. <button type="submit">确定</button>
  820. </div>
  821. </div>
  822. </div>
  823. </div>
  824. <script src="static/lib/flexible.min.js"></script>
  825. <script src="static/lib/exif.min.js"></script>
  826. <script id='recordJS'></script>
  827. <script>
  828. //手机端是微信才使用网页录音
  829. if(window.navigator.userAgent.toLowerCase().match(/MicroMessenger/i) == 'micromessenger'){
  830. $("#recordJS")[0].src = 'static/lib/record/index.js';
  831. }
  832. </script>
  833. <script src="static/lib/autoLogin.js"></script> <!-- 防止掉线 -->
  834. <script src="static/js/editApp.js"></script>
  835. <script>
  836. //function start() {
  837. var app = new App('0mVvxHHT');
  838. console.log('开始测试!');
  839. //app.start();
  840. //}
  841. </script>
  842. <script src="static/lib/swiper-4.3.5.min.js"></script>
  843. <script src="static/lib/jroll.2.6.5.min.js"></script>
  844. <script src="static/lib/cropper.min.js"></script>
  845. <script src="static/lib/wangEditorV2.min.js"></script>
  846. <script src="static/lib/howler.min.js" class="build keep"></script>
  847. <!-- <script src="static/lib/qiniu.js"></script>
  848. <script src="static/lib/7niuUpload.js"></script> -->
  849. </body>
  850. </html>