flash action 由浅入深之一
作者 佚名技术
来源 服务器技术
浏览
发布时间 2012-07-10
被一大堆代码吓着了,代码这么长,只是为了让阅读者看得更清楚而已。(其实越短的代码才越可怕呢,呵呵) // Stop the movie at the first question stop (); // Initialize main timeline variables 定义变量 var displayTotal; // Textfield for displaying user''s score var numQuestions = 2; // Number of quiz questions var q1answer; // User''s answer for question1 var q2answer; // User''s answer for question2 var totalCorrect = 0; // Number of questions answered correctly 以上和例一一样 var correctAnswer1 = 3; // The correct choice for question 1 第一题的正确答案 var correctAnswer2 = 2; // The correct choice for question 2 第二题的正确答案 // Function to register user''s answers 这个函数的功能是提交答题者的答案 function answer (choice) { answer.currentAnswer++; //现在answer.currentAnswer是1,正在提交的是第一题,下一次answer.currentAnswer就变成2,代表提交的是第二题 set ("q" + answer.currentAnswer + "answer", choice); // 不复杂不复杂,"q" + answer.currentAnswer + "answer"第一题的时候就是q1answer,第二题是q2answer,把参数choice传过来的值放到两个变量里面而已 if (answer.currentAnswer == numQuestions) { // 判断是不是两题都答完了,是就转到问题结束帧 gotoAndStop ("quizEnd"); } else { gotoAndStop ("q" + (answer.currentAnswer + 1)); } } // Function to tally user''s score 这个函数是改题的 function gradeUser() { // Count how many questions user answered correctly 将两个答案和正确答案比较,对就totalCorrect加一 //此处用了一个for循环,大家如有疑问的,可以查AS字典,在帝国就有中文版 for (i = 1; i <= numQuestions; i++) { // 下面用的eval有必要说一下,它的作用是将字符串和变量组成一个新的变量名,是个很方便的功能 if (eval("q" + i + "answer") == eval("correctAnswer" + i)) { totalCorrect++; } } // Show user''s score in an on-screen text field 将答案显示出来,与第一个例子同 displayTotal = totalCorrect; } 好了,第一帧的函数写好了,之后每个答案的选择按钮就简单了 [1]?[2]?[3]?下一页?? 例如第一题的选项一,就写: on (release) { answer(1); } 第二题的写法同上(如果你的选择题有很多道,做法都是一样的,只要复制第一题,然后把题目改了就行) 最后在quizEnd帧里面调用改题的函数gradeUser(); 分析第二个例子是代码,你会发现比第一个例子精简了很多。 而集中在同一帧的代码,将: * 更容易修改 * 更容易升级 * 更少的出错机会 * 更容易查错 * 更精简(更少的字节数) 第九章 数组(arrays) 在下一个新版本的多选题里,我们将使用什么AS的特性,来让它更好呢? 那就是数组。 数组就是一系列的数据(MOOCK又开始上课了,chocobo的英文和计算机都不算好,为免误人子弟,概念性的东西尽量精简) 例如这样两个变量储存的数据: fruit1 = "oranges"; fruit2 = "apples"; 它们是互相独立的,使用起来很不方便,我们需要的是数组,以下是数组的定义方法,用“[]”框住,用“,”分隔开每个元素: fruitList = ["oranges", "apples"]; 现在两个数据是放到同一个数组里面了,我们开始详细解说数组 数组里面每一个数据称为元素(element)。 而每一个元素都有个独立数字代表所处的位置,数字叫索引(index),注意! 第一个数据的索引是0,第二个才是1 要按索引来提出数据,我们要用一个运算符[],例如使用fruitList第一个元素赋值给a: a=fruitList[0]; 又例如将a的值赋给fruitList第一个元素: fruitList[0]=a; 当然[]里面也可以放表达式、变 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
关于flash action 由浅入深之一的所有评论