1
var uf = $('.utilsFloat');
var topValue = $('.article .header').offset().top;
uf.css({
    top : topValue,
    marginLeft : -137,
    position: 'absolute'
});

$(document).scroll(function() {

    var fixedShareTools = $(document).scrollTop() >= topValue;

    if (fixedShareTools) {
        uf.css(
            {
                top : 10 + "px",
                "position" : "fixed"
            }
        );
    }
    else {
        uf.css(
            {
                "position" : "absolute",
                top : topValue + "px"
            }
        )
    }});

上面的代码试图在您滚动到页面上的标题时将项目的位置属性设置为“固定”。它适用于除 IE8 和 7 之外的所有应用。IE7/8 中的 jQuery .css() 方法是否存在问题?

这个问题有解决方案吗?

4

1 回答 1

1

我找到了一个解决方案。我最终改用了类,这很有效。

if ($('body').hasClass('content-article')) {
//Pulling the top position value of the article header so the share tools align with it always
var uf = $('.utilsFloat');
var topValue = $('.article .header').offset().top;
uf.css({top : topValue });

$(window).scroll(function() {

    var fixedShareTools = $(window).scrollTop() >= topValue;

    if (fixedShareTools) {
        uf.removeClass('absolute');
        uf.addClass('fixed');
    }
    else {
        uf.removeClass('fixed');
        uf.addClass('absolute');
        uf.css(top, topValue + "px");
    }});}
于 2012-12-05T22:03:05.377 回答