2014-05-14 22 views
0

我有一個JavaScript switch語句來確定我的img src是否等於某個鏈接,但是當我運行它時,沒有任何一個case語句被執行。執行線貫穿始終。使用.attr()方法的JavaScript switch語句的行爲

switch (sitem.attr("src")) { 
    case "../Stranice/Ultraga/Ultraga.html": 
     $(".rectangle-u h2").text('ULTRAGA'); 
     $(".rectangle-d h2").text('NEZIR KAMENICA'); 
     break; 
    case "../Stranice/Aida i Ajna/pocetna/pocetna.html": 
     $(".rectangle-u h2").text('WEBSTRANICA'); 
     $(".rectangle-d h2").text('AIDA I AJNA'); 
     break; 
    case "../Stranice/Vedad/Home/Home.html": 
     $(".rectangle-u h2").text('GAME DRAGON'); 
     $(".rectangle-d h2").text('VEDAD FAZLIĆ'); 
     break; 
} 

如何找出爲什麼沒有執行case語句?

+1

簡單的調試應該會告訴你爲什麼。 'console.log(sitem.attr(「src」));'你期望的是什麼? – epascarello

+0

可能要爲該開關添加默認設置XD –

回答

2

attr()返回一個絕對URL,這就是它與您的相對URL不匹配的原因。

+0

您可以發佈固定代碼,它應該看起來像 – Ultraga

+0

固定代碼是您在switch語句中使用abslolute URL。我不能提供那些,因爲我不知道他們 –

0

如何使用每個檢查與是否含有

$(".Containerclass img").each(function() { 
     imgsrc = this.src; 
     if (imgsrc.toLowerCase().indexOf("Ultraga.html") >= 0)) 
     { 
      $(".rectangle-u h2").text('ULTRAGA'); 
      $(".rectangle-d h2").text('NEZIR KAMENICA'); 
     } 
     else if (imgsrc.toLowerCase().indexOf("pocetna.html") >= 0)) 
     { 
      $(".rectangle-u h2").text('WEBSTRANICA'); 
      $(".rectangle-d h2").text('AIDA I AJNA'); 
     } 
     else if (imgsrc.indexOf("Home.html") >= 0)) 
     { 
      $(".rectangle-u h2").text('GAME DRAGON'); 
      $(".rectangle-d h2").text('VEDAD FAZLIĆ'); 
     } 
    }); 

如果.toLowerCase(),則使用內部的indexOf文本()必須是小寫字母確認。

全部最好