jQuery实现的在线答题功能


Posted in Javascript onApril 12, 2015

有时在网页中要加入一个在线测试功能,例如在线调查,在线测试各类知识等应用,这类应用需要用到很多前后端技能。今天我给大家分享一个基于jQuery的前端应用——测试答题功能。

jQuery实现的在线答题功能

HTML

首先载入jquery库文件和quiz.js以及所需的CSS样式文件styles.css。
 

<script src="jquery.js"></script> 
<script src="quiz.js"></script> 
<link rel="stylesheet" href="styles.css" />

然后在需要放置测试题的位置加入div#quiz-container。

<div id="quiz-container"></div>

jQuery

首先,我们定义题目和答案选项,question是题目,answers是答案选项,correctAnswer是正确答案。可以看出定义的init是一个json数据格式。

var init={'questions':[{'question':'jQuery是什么?','answers':['JavaScript库','CSS库','PHP框架','以上都不是'],'correctAnswer':1},{'question':'找出不同类的一项?','answers':['写字台','沙发','电视','桌布'],'correctAnswer':3},{'question':'国土面积最大的国家是:','answers':['美国','中国','俄罗斯','加拿大'],'correctAnswer':3},{'question':'月亮距离地球多远?','answers':['18万公里','38万公里','100万公里','180万公里'],'correctAnswer':2}]};

接下来,我们直接调用quiz.js提供的插件方法,然后打开页面是不是可以看到已经在页面上生成了一个在线测试项目。

$(function(){ 
  $('#quiz-container').jquizzy({ 
    questions: init.questions 
  }); 
});

那么,要修改定制测试题样式布局,可以到quiz.js和styles.css两文件中做适当修改。
疑问
到这里,细心的朋友就会发现,问题来了:
1、直接将题目的正确答案标记在js代码中,是不是不安全?正规的测试项目答案是不是应该在后台判断,以免有人查看源代码直接获取正确答案。
2、如何与后台交互?比如测试答题前先验证身份,答题完后将结果发送给后台。
我想说的是,这是一个前端代码演示项目,真正的应用答案是不会出现在前端代码中的;quiz.js其实已经有与后台ajax交互的接口,我们会在后面的文章中做详细介绍,文章标题我已经想好了:如何使用jQuery+PHP+MySQL来实现一个在线测试项目,敬请关注。

查看演示 下载源码

以上所述就是本文的全部内容了,希望大家能喜欢。

Javascript 相关文章推荐
一些易混淆且不常用的属性,希望有用
Jan 29 Javascript
动态控制Table的js代码
Mar 07 Javascript
Javascript Math ceil()、floor()、round()三个函数的区别
Mar 09 Javascript
jQuery ajax serialize()方法的使用以及常见问题解决
Jan 27 Javascript
jQuery中delegate和on的用法与区别详细解析
Jan 26 Javascript
javascript产生随机数方法汇总
Jan 25 Javascript
使用bootstraptable插件实现表格记录的查询、分页、排序操作
Aug 06 Javascript
JS常用的几种数组遍历方式以及性能分析对比实例详解
Apr 11 Javascript
在vue项目中正确使用iconfont的方法
Sep 28 Javascript
vue-cli 首屏加载优化问题
Nov 06 Javascript
React组件设计模式之组合组件应用实例分析
Apr 29 Javascript
Vue 构造选项 - 进阶使用说明
Aug 14 Javascript
jQuery插件bxSlider实现响应式焦点图
Apr 12 #Javascript
jQuery插件Skippr实现焦点图幻灯片特效
Apr 12 #Javascript
jQuery插件pagination实现分页特效
Apr 12 #Javascript
jQuery插件multiScroll实现全屏鼠标滚动切换页面特效
Apr 12 #Javascript
jQuery插件slicebox实现3D动画图片轮播切换特效
Apr 12 #Javascript
jQuery插件Elastislide实现响应式的焦点图无缝滚动切换特效
Apr 12 #Javascript
jQuery插件Tooltipster实现漂亮的工具提示
Apr 12 #Javascript
You might like
全国FM电台频率大全 - 16 河南省
2020/03/11 无线电
PHP 长文章分页函数 带使用方法,不会分割段落,翻页在底部
2009/10/22 PHP
PHP魔术方法__GET、__SET使用实例
2014/11/25 PHP
基于PHP生成简单的验证码
2016/06/01 PHP
PHP中overload与override的区别
2017/02/13 PHP
tp5.1 框架数据库高级查询技巧实例总结
2020/05/25 PHP
php+mysql+ajax 局部刷新点赞/取消点赞功能(每个账号只点赞一次)
2020/07/24 PHP
JavaScript全局函数使用简单说明
2011/03/11 Javascript
JS实现将人民币金额转换为大写的示例代码
2014/02/13 Javascript
sliderToggle在写jquery的计时器setTimeouter中不生效
2014/05/26 Javascript
关于jQuery判断元素是否存在的问题示例探讨
2014/07/21 Javascript
javascript实现复制与粘贴操作实例
2014/10/16 Javascript
pace.js页面加载进度条插件
2015/09/29 Javascript
Nodejs获取网络数据并生成Excel表格
2020/03/31 NodeJs
JS 实现 ajax 异步浏览器兼容问题
2017/01/21 Javascript
基于JavaScript实现的快速排序算法分析
2017/04/14 Javascript
vue2.0 父组件给子组件传递数据的方法
2018/01/15 Javascript
如何从零开始利用js手写一个Promise库详解
2018/04/19 Javascript
JavaScript函数apply()和call()用法与异同分析
2018/08/10 Javascript
微信小程序实现上拉加载功能
2019/11/20 Javascript
JS面试题中深拷贝的实现讲解
2020/05/07 Javascript
在Vue中使用mockjs代码实例
2020/11/25 Vue.js
[02:02:38]VG vs Mineski Supermajor 败者组 BO3 第一场 6.6
2018/06/07 DOTA
[52:40]完美世界DOTA2联赛PWL S2 Magma vs GXR 第一场 11.29
2020/12/02 DOTA
wxPython 入门教程
2008/10/07 Python
Python中一些自然语言工具的使用的入门教程
2015/04/13 Python
Python实现的朴素贝叶斯分类器示例
2018/01/06 Python
django 实现后台从富文本提取纯文本
2020/07/02 Python
canvas实现二维码和图片合成的示例代码
2018/08/01 HTML / CSS
澳大利亚领先的睡衣品牌:Peter Alexander
2016/08/16 全球购物
2014镇党委班子对照检查材料思想汇报
2014/09/23 职场文书
教师个人学习总结
2015/02/11 职场文书
大学开学典礼新闻稿
2015/07/17 职场文书
2016优秀护士先进个人事迹材料
2016/02/25 职场文书
详解JS WebSocket断开原因和心跳机制
2021/05/07 Javascript
python的netCDF4批量处理NC格式文件的操作方法
2022/03/21 Python