for循环内部的开关语句在javascript中

时间:2017-03-03 00:42:37

标签: javascript

我想在部分插入动态html元素。 例如,当我需要三列时,我将首先调用for循环,其中包含3个动态html。当我需要两列时,我将调用第二个for循环,其中有2个动态html部分。我想我需要切换机箱来选择我需要的循环,但它有可能吗? for switch语句中的循环。下面,

switch(){
    case 1;
        for(var d = 0; d<3; d++){trigger}
    case 2;
        for(var a = 0; a<2; a++){trigger}
    case 3;
        trigger;
}

&#13;
&#13;
$(function(){
    	for(var d = 0; d<3; d++){
				$("#section").append("<article id='menu_'" + d + ">menu</div>");
			
				var cssObj = {
					'width' : '33%',
					'background' : 'blue',
					'float' :"left",
					'border':"1px solid #aaa"
				}

				
				$("#section").children("#menu_").css(cssObj);
			}

			for(var a = 0; a<2; a++){
				$("#section1").append("<article id='menu_'" + a + ">menu</div>");

				var cssObj = {
					'width' : '49.6%',
					'background' : 'yellow',
					'float' : 'left',
					'border' : '1px solid #aaa'
				}

				$("#section1").children("#menu_").css(cssObj);
			}

			$("#section2").append("<article id='menu_'>menu</div>")
			var cssObj = {
				'width' : '99.7%',
				'background' :'green'
			}

			$("#section2").children("#menu_").css(cssObj);




})
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.1/jquery.min.js"></script>
<div id="section">
			
</div>

<div id="section1">

</div>

<div id="section2">

</div>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:1)

我的建议是使用switch来定义您调用触发器的次数并在其外部执行循环:

switch(val){ // whatever val you're testing
case 1:
   n =3;
   break;
case 2:
   n =2;
   break;
case 3:
   n=1;
}
for(var d = 0; d<n; d++){trigger}