2013-07-24 71 views
0

我想設置使用該功能的背景圖像:添加CSS不工作的IE

$('#frame').css('background-image','url(floorplans/img/selectors/floorplates-bg/'+floor+'.png)'); 

如果地板是從1-7包含數字的變量。

它適用於Chrome,Safari和Firefox。但是在IE上它並沒有設置背景圖片。 .css();在IE上工作嗎?

編輯:這是整個腳本:

$('#secondary-nav li').click(function(){ 
    var floor = $(this).attr('id').replace('f',''); 


    $('#frame').fadeOut(200); 
    $('#secondary-nav li').removeClass('current'); 

    var currentFloor = ''; 

    setTimeout(function() { 
     currentFloor = '#f' + floor; 

     $(currentFloor).addClass('current'); 

     $('.units').css('display','none'); 

     var image = 'url(floorplans/img/selectors/floorplates-bg/'+floor+'.png)'; 


     $('#frame').css('background-image', image); 


     $('#frame').fadeIn(200); 
     $('#floor'+floor).fadeIn(200); 
    }, 500); 
}); 

// highlight on mouseover 
$(".units div a").hover(
     function(){ 
      $('img',this).stop().animate({'opacity':0},200); 
     }, 
     function(){ 
      $('img',this).stop().animate({'opacity':1},200); 
     } 
); 




// display floorplan 
$('.units div').each(function(i){ 
    var floor = $(this).parent().attr('id').replace('floor',''); 

    var unit = floor + $(this).attr('class').replace('u',''); 

    var details = $('a',this).attr('title'); 

    var group = $('a',this).attr('class').replace('i',''); 


    $(this).click(function(){ 
     $('#details .info h1').html('Unit '+unit); 
     $('#details .info h2').html(details); 
     $('#details .info a').attr('href','floorplans/downloads/'+group+'.pdf'); 
     $('#details .floorplate img').attr('src','floorplans/img/floorplans/floorplates/Unit-'+unit+'.png'); 
     $('#details .floorplan img').attr('src','floorplans/img/floorplans/'+group+'.png'); 
    }); 
    $(this).fancybox({'href':'#details'}); 
}); 
+0

這是一個伸展,但:如果你用雙引號包裝實際的URL會發生什麼? – Blazemonger

+0

顯示你的'地板'的數學。也許這是一個計算問題的IE瀏覽器 –

+1

什麼版本的IE? – putvande

回答

0

你的問題實在是不可預知的。

但以下是我的假設:

(1)不要使用console.log當你去生產IE瀏覽器,當開發者工具打開一個特定的標籤控制檯對象只露出。

so刪除您的console.log

(2)你指的是正確的文件夾路徑?

(3)通常文件路徑的前綴爲/。所以也許會導致這個問題。

(4)更好的是這樣的:這是你的問題中

var imageUrl = 'floorplans/img/selectors/floorplates-bg/'+floor+'.png'; 
$('#frame').css('background-image',imageUrl); 

希望應該存在。

+0

我改變了這一點,仍然沒有骰子。也許問題來自功能的其他地方,但我懷疑它。當我徘徊它顯示我#frame background-image沒有被更新,這是它被設置的唯一部分。 – sayra90

+0

@ sayra90你在'floor'中獲得了正確的值嗎?即,'image name === floor' – Praveen

+0

是的,我甚至記錄它檢查,我的意思是它適用於鉻,safari和firefox。地板的價值確實與實際的地板相符 – sayra90

0

嘗試將toString()函數添加到可變樓層。它對我有效,當我有完全相同的問題;-)