2016-12-07 176 views
-1

我嘗試優化此代碼:優化jQuery腳本

 $(".carre").each(function(){ 

    if ($(this).attr('taille') == '3-1') { 
     $(this).height(a*3).width(b*1); 
     $("a", this).height(a*3).width(b*1); 
    } 

    if ($(this).attr('taille') == '1-3') { 
     $(this).height(a*1).width(b*3); 
     $("a", this).height(a*1).width(b*3); 
    } 

    if ($(this).attr('taille') == '2-1') { 
     $(this).height(a*2).width(b*1); 
     $("a", this).height(a*2).width(b*1); 
    } 

    if ($(this).attr('taille') == '2-3') { 
     $(this).height(a*2).width(b*3); 
     $("a", this).height(a*2).width(b*3); 
    } 
}); 
} 

我嘗試這樣做:

 $(".carre").each(function(){ 

    var str = $(this).attr('taille'); 
    var h = str.charAt(0); 
    var w = str.charAt(str.length-1); 
     $(this).height(a*h).width(b*w); 
     $("a", this).height(a*h).width(b*w);}); 

但對於所有不工作,只爲一類。

你能幫我請,

問候

+0

控制檯中是否有任何錯誤?哪裏定義了「a」和「b」? – billyonecan

回答

0

我沒有安慰錯誤

我不能發佈的所有代碼。 這是a和b的值。

var a = $(".height-max").height()+1, 
b = $(".height-max").width()+1; 
0

您可以使用split字符串提取值:

var values = "3-1".split("_"); 

然後你就可以[0]和值[1]在你的計算訪問值。