2013-07-24 39 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()函数添加到可变楼层。它对我有效,当我有完全相同的问题;-)