我正在尝试使用此功能设置背景图像:
$('#frame').css('background-image','url(floorplans/img/selectors/floorplates-bg/'+floor+'.png)');
其中floor是包含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 :(得分:0)
你的问题确实无法预测。
但以下是我的假设:
(1)当你去生产IE时,永远不要使用console.log
,只有在为特定标签打开开发人员工具时才会公开控制台对象。
所以请删除console.log
。
(2)您指的是正确的文件夹路径吗?
(3)通常文件路径以/
为前缀。所以这可能导致问题。
(4)最好有这样的事情:
var imageUrl = 'floorplans/img/selectors/floorplates-bg/'+floor+'.png';
$('#frame').css('background-image',imageUrl);
希望你的问题存在。
答案 1 :(得分:0)
尝试将toString()
功能添加到您的可变楼层。当我遇到完全相同的问题时,它对我有用; - )