doTest.html 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. <div class="exam">
  2. <div class="top-part">
  3. <div>
  4. <button class="quit-bt" @click="quitTest">放弃</button>
  5. </div>
  6. <div>
  7. <label>模块{{tempModeName2[paper.currentSection]}}</label>
  8. <!-- <label>{{tempModeName[paper.currentSection]}}</label> -->
  9. <i class="split-line"></i>
  10. <label>{{paper.questions[paper.currentQuestion].correctNum > 1?'多选题':'单选题'}}</label>
  11. </div>
  12. <div class="time-count">
  13. <span>考试时间:</span><br/>
  14. <span v-show="data.noBlink">{{leftTimeShow}}</span>
  15. </div>
  16. <div class="mark-flag">
  17. <div v-if="paper.sections[paper.currentSection - 1].material">
  18. <img src="@/images/doTest/calculate.png" @click="data.showCalculator = !data.showCalculator"><br/>
  19. <span>计算器</span>
  20. </div>
  21. <div v-if="paper.sections[paper.currentSection - 1].material">
  22. <img src="@/images/doTest/mark-pen.png"><br/>
  23. <span>记号笔</span>
  24. </div>
  25. <div @click="$set(paper.questions[paper.currentQuestion],'flag',!paper.questions[paper.currentQuestion].flag)">
  26. <!-- <img :src="'../../images/doTest/'+(paper.questions[paper.currentQuestion].flag?'flag2-choose.png':'flag2.png')" @click="paper.questions[paper.currentQuestion].flag = !paper.questions[paper.currentQuestion].flag"><br/> -->
  27. <img v-if="paper.questions[paper.currentQuestion].flag" src="@/images/doTest/flag2-choose.png">
  28. <img v-if="!paper.questions[paper.currentQuestion].flag" src="@/images/doTest/flag2.png">
  29. <br/><span :style="{'color':paper.questions[paper.currentQuestion].flag?'#f39f00':'#ffffff'}">标记&nbsp;&nbsp;</span>
  30. </div>
  31. </div>
  32. <div class="answer-list" :class="{'openCard':data.cardOpen}">
  33. <div>
  34. <p>答题卡</p>
  35. <span></span>
  36. </div>
  37. <div>
  38. <p style="background: white;color: black;border: solid 1px black">未做题</p>
  39. <p style="background: #4EB9E3;color: white;border: solid 1px #1C7CA2">已回答</p>
  40. <p style="background: #F39B77;color: white;border: solid 1px black">标记</p>
  41. </div>
  42. <div class="answer-card">
  43. <p>模块{{tempModeName2[paper.currentSection]}}</p>
  44. <!-- <p>{{tempModeName[paper.currentSection]}}</p> -->
  45. <button v-for="(item,index) in paper.questions" v-show="paper.currentSection == item.section || paper.currentSection == item.section * -1" @click="changePage(index)"
  46. :class="{'hasAns':(paper.questions[index].ans != null && paper.questions[index].ans != ''),'flagColor':paper.questions[index].flag}">
  47. {{index - paper.indexRange[paper.currentSection - 1].min + 1}}
  48. </button>
  49. <div>
  50. <button @click="submitAnswer()">提交答案</button>
  51. </div>
  52. </div>
  53. </div>
  54. </div>
  55. <div class="material-part" v-if="paper.sections[paper.currentSection - 1].hasMaterial">
  56. <!-- <div> -->
  57. <div class="triangle-top"><span></span><span></span></div>
  58. <div>
  59. <div v-html="paper.sections[paper.currentSection - 1].material" class="material-html"></div>
  60. </div>
  61. <!-- </div> -->
  62. </div>
  63. <div class="scroll-part" :class="{'halfScreen':paper.sections[paper.currentSection - 1].hasMaterial}">
  64. <!-- <div> -->
  65. <div class="progress-part">
  66. <span>答题进度</span>
  67. <div>
  68. <div></div>
  69. <div :style="{'width':completePercent + '%'}"></div>
  70. <i></i>
  71. <i></i>
  72. <i :style="{'left':completePercent + '%'}"></i>
  73. <i class="flag-signal" v-for="(item,index) in paper.questions" v-if="(paper.currentSection == item.section || paper.currentSection == item.section * -1) && paper.questions[index].flag"
  74. :style="{'left':'calc(' + 100*(index - paper.indexRange[paper.currentSection - 1].min + 1)/(paper.indexRange[paper.currentSection - 1].max - paper.indexRange[paper.currentSection - 1].min + 1) + '% + 4px)'}"
  75. @click="changePage(index)">
  76. </i>
  77. <span :style="{'left':'calc(' + completePercent + '% - 7px)'}">{{completePercent}}%</span>
  78. </div>
  79. <span>{{paper.currentQuestion - paper.indexRange[paper.currentSection - 1].min + 1}}/{{paper.indexRange[paper.currentSection - 1].max - paper.indexRange[paper.currentSection - 1].min + 1}}</span>
  80. </div>
  81. <div class="content-part">
  82. <div class="question-area">
  83. <div class="triangle-top"><span>#{{paper.currentQuestion - paper.indexRange[paper.currentSection - 1].min + 1}}</span></div>
  84. <div class="question-html">
  85. <div v-html="paper.questions[paper.currentQuestion].content" class="content-html"></div>
  86. </div>
  87. </div>
  88. <div>
  89. <div class="answer-area2" v-for="answer in paper.questions[paper.currentQuestion].options"
  90. @click="chooseCorrect(answer,paper.questions[paper.currentQuestion].options)" :class="{'backChoose':answer.choose}">
  91. <div :class="{'correct':answer.choose}">
  92. <i :class="{'multiChooseType':paper.questions[paper.currentQuestion].correctNum > 1}">
  93. <img src="@/images/doTest/tick-up.png" v-if="answer.choose">
  94. </i>
  95. <label>{{allOptionList[answer.oindex]}}</label>
  96. </div>
  97. <div v-html="answer.content" class="answer-html" ref="htmlContent">
  98. </div>
  99. </div>
  100. </div>
  101. </div>
  102. <div class="page-part">
  103. <button @click="changePage(paper.currentQuestion - 1)">
  104. <span id="preLeft"><img src="@/images/doTest/pre.png"></span>
  105. <label>上一题</label>
  106. </button>
  107. <button @click="changePage(paper.currentQuestion + 1,'',$event)">
  108. <label>{{paper.currentQuestion == paper.indexRange[paper.currentSection - 1].max?'提交':'下一题'}}</label>
  109. <span id="nextRight"><img src="@/images/doTest/next.png"></span>
  110. </button>
  111. </div>
  112. <!-- </div> -->
  113. </div>
  114. <el-dialog
  115. class="dialog-style"
  116. title="提示"
  117. :visible.sync="dialogVisible1"
  118. width="300px"
  119. :before-close="handleClose1">
  120. <span v-if="!dialog1Flag">模块{{tempModeName2[paper.currentSection]}}结束!</span>
  121. <!-- <span v-if="!dialog1Flag">{{tempModeName[paper.currentSection]}}结束!</span> -->
  122. <span v-if="dialog1Flag">时间结束,停止作答!</span>
  123. <span slot="footer" class="dialog-footer">
  124. <el-button type="primary" @click="handleClose1">确 定</el-button>
  125. </span>
  126. </el-dialog>
  127. <el-dialog
  128. class="dialog-style"
  129. title="提示"
  130. :visible.sync="dialogVisible2"
  131. width="440px"
  132. :before-close="handleClose2">
  133. <span>您已完成此次测试,请耐心等待我们的专业老师与您沟通测试结果,助您进步!</span>
  134. <span slot="footer" class="dialog-footer">
  135. <el-button type="primary" :loading="loading" @click="handleClose2">{{loading?'请稍等':'确 定'}}</el-button>
  136. </span>
  137. </el-dialog>
  138. <!-- <div class="move-calc" v-show="data.showCalculator" v-include="'partials/dialogWindow/calculator.html'"></div> -->
  139. </div>