2

我以绝对位置关注 Div:

<div id="target" style="height: 300px; position: absolute; top: 275px;"></div>

我正在做的是使用javascript计算屏幕水平分辨率,然后使用获得的宽度,我正在计算我的“目标” div的宽度和左侧位置,如下所示:

var windowWidth = $(window).width();
var targetWidth = windowWidth * 0.7;
var targetLeftPos = windowWidth * (15 / 100);
$('#target').css({ 'width': targetWidth });
$('#target').css({ 'left': targetLeftPos });

这段代码在所有浏览器中都能完美运行,但在IE 中,这段代码根本不起作用,导致目标 div没有宽度和左侧位置样式,导致我的所有设计都被破坏了。

如果检测到的浏览器是 IE,有什么方法可以检测客户端浏览器,然后执行备用代码。

请告诉我应该如何检测客户端浏览器以及应该为 IE 执行哪些替代代码。

提前致谢。

4

2 回答 2

3

而不是$(window).width,使用

var windowWidth = window.innerWidth;
于 2013-08-10T05:26:42.403 回答
2

我找出了问题......外部jquery插件stickyscroll.js导致了这个问题。它正在停止页面上所有 js 的执行(仅在 IE 中发生)。当我删除它时,上面的代码对 IE 也一直准确......

于 2013-08-10T08:31:56.953 回答