首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

循环太多,导致脚本崩溃,寻求解决办法

2013-11-29 
循环太多,导致脚本崩溃,寻求解决方法需求是这样的, 做一个类似答题的一个系统,分了十几个小模块,里面有对

循环太多,导致脚本崩溃,寻求解决方法
需求是这样的, 做一个类似答题的一个系统,

分了十几个小模块,里面有对应的题,每个题下有三种分数(下拉选择)

类似下面那种结构  一个页面的题大概有50左右




后来想想也是,,一个页面有大概40多循环  能不卡吗.
有没有其他解决办法, 不用那么麻烦的使用唯一id 的val()相加(题目50左右实在是太多了)...

试试用委托,把分类放在一个数组中,每进行一个操作就保存一个值
[解决办法]
引用:
Quote: 引用:

既然IE8+都没事怎么可能因为循环多导致的IE6出事了
去看看JS哪里不兼容吧
IE8跟IE6 7 JS有兼容性问题


ie6会出现脚本崩溃的提示  问其是否继续
继续的话  是可以的   不过用户肯定等不了那么久.


如果按照你的计算方式的话

分别计算 所有A的得分 B的得分 C的得分
每个大题下的A的得分 B的得分 C的得分

试一下用数组存储每个大题下的A的得分 B的得分 C的得分
然后计算所有A的得分 B的得分 C的得分的时候用上面的数组进行求和
应该会节省一点时间
[解决办法]
不命名,就用序号嘛
假定每个题目下的下拉文本对不等(你各处的都是3对)
并假定每个题目都用一个 div 包裹,且每个对象都以命名(即 name 属性存在)则有原型
a = [];
$('div').each(function() {
  $(this).find('[name]').each(function(i){
    a[i] += $(this).val();
  });
});

数组 a 就是按对象次序的结果(偶数下标为 select 的值,奇数下标为 text 的)
也可以分别取出
总之只需遍历一遍 
[解决办法]
认真看了看。
本来就不该这么做的。
你不会这样设几个变量。
T1= [[],[],[]],
T2 = [[],[],[]],

根据事件(如click)把值push进去。

热点排行