簡體   English   中英

jQuery ie8對象為空或未定義

[英]jQuery ie8 Object Null or undefined

我有一個大問題,並試圖解決它,因為幾個小時以來,但沒有字。 一切都很好,而不是IE8。

var geschlechtA= jQuery('#geschlecht').find('.active').text();
var grund_basisB= jQuery('#grund_basis').find('.active').text();
var varianteC= jQuery('#variante').find('.active').text();
var farbeD= jQuery('#farbe').find('.active span').text();
var param =[geschlechtA,grund_basisB,varianteC,farbeD];
var bildDaten=[
{"geschlecht":"männlich","basis":"Business","variante":"klassisch","farbe":"schwarz/weiss","bsrc":"mydomain/img1.jpg"},
{"geschlecht":"weiblich","basis":"Bistro","variante":"leger","farbe":"jeans/weiss","bsrc":"mydomain/img2.jpg"},
{"geschlecht":"männlich","basis":"Business","variante":"klassisch","farbe":"schwarz/weiss","bsrc":"mydomain/img3.jpg"},
{"geschlecht":"männlich","basis":"Business","variante":"klassisch","farbe":"schwarz/blau","bsrc":"mydomain/img4.jpg"},
]

var found=false;

    for (var i = 0; i < bildDaten.length; i++) {
        if(bildDaten[i].geschlecht==param[0]){
            if(bildDaten[i].basis==param[1]){
                if(bildDaten[i].variante==param[2]){
                    if(bildDaten[i].farbe==param[3]){
                        found=true;
                        jQuery('#image_container img').attr('src', bildDaten[i].bsrc);
                    }
                }
            }
        }
    };
    if(!found){
        jQuery('#image_container img').attr('src', bildDaten[0].bsrc);
    }

我正在嘗試制作一個簡單的Cloth配置器。 它在Chrome,FF,IE9 +中效果很好,但是我為ie8遇到以下錯誤:

SCRIPT5007: Für die Eigenschaft "geschlecht" kann kein Wert abgerufen werden: Das Objekt ist Null oder undefiniert 

它說對於屬性“ geschlecht”無法獲取值,對象為NULL或未定義。

我該怎么做?

IE8無法正確讀取尾隨逗號。 bildDaten數組中刪除最后一個逗號。

還要嘗試將代碼放入匿名閉包中。 IE具有各種內置的,不可重寫的對象。

(function () {
  // Your code
}());

順便說一下,嵌套的if沒有對應的else則總是可以重構為&&

for (var i = 0; i < bildDaten.length; i++) {
  if (bildDaten[i].geschlecht == param[0] &&
      bildDaten[i].basis == param[1] &&
      bildDaten[i].variante == param[2] &&
      bildDaten[i].farbe == param[3]) 
  {
    found = true;
    jQuery('#image_container img').attr('src', bildDaten[i].bsrc);
  }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM