我有这个脚本,根据为其设置的背景图像的高度调整div的高度。
$(document).ready(function() {
var url = $('#header').css('background-image').replace('url(', '').replace(')', '').replace("'", '').replace('"', '');
var bgImg = $('<img />');
bgImg.hide();
bgImg.bind('load', function()
{
var height = $(this).height();
$("#content").css("margin-top",height+"px");
$("#header").css("min-height",height+"px");
});
$('#header').append(bgImg);
bgImg.attr('src', url);
});
出于某种原因,它在Chrome和Safari中都运行良好,但在Firefox中则不行。我已经检查了FF中的控制台,看看是否有任何错误,但没有错误。不确定这里是否有与FF不兼容的东西或者我不熟悉的奇怪的FF事物。任何评论赞赏。
答案 0 :(得分:3)
问题是.replace("'", '')
和.replace('"', '')
仅替换FIRST引用。
然后,您可以将正则表达式与g
(全局)标记一起使用:.replace(/'/g, '')
和.replace(/"/g, '')
。或者甚至更好,加入他们:
.replace(/url\(|\)|'|"/g, '');