jQuery background-attachment в Chrome - PullRequest
3 голосов
/ 20 июня 2011

Помогая другу, работающему над ранней бета-версией его сайта, я написал короткий фрагмент jQuery, чтобы предотвратить прокрутку фиксированного фонового изображения за нижний край элемента div.Все отлично работает в Firefox, Safari и даже в IE8, но в Chrome (как в Win7, так и в OSX 10.6) возникает проблема, когда фоновое вложение изменяется с прокрутки назад на фиксированный, когда изображение не прокручивается вместе со страницейрезервное копирование, и его фрагменты размещаются повторно при прокрутке вниз (трудно объяснить, проверьте демонстрационную ссылку ниже).Кто-то еще сталкивался с этим вообще?

JavaScript:

$(document).ready(function(){
var imageHeight = 585;
$(window).scroll(function(){
    if($(window).scrollTop() + $(window).height() > ($("div.main").height() + $("div.main").offset().top)) {
        $("div.main").css("background-position", "0px " + ($("div.main").height() - imageHeight) + "px");
    $("div.main").css("background-attachment", "scroll");
    }else{
        $("div.main").css("background-position", "right bottom");
        $("div.main").css("background-attachment", "fixed");
    }
});

});

Демонстрационная версия: http://mydigitalworld.dyndns.info/dns.html

1 Ответ

0 голосов
/ 21 июня 2011

Возможно, вы захотите использовать background-repeat: no-repeat.

Сказав это, я не понимаю, чего вы пытаетесь достичь и почему это невозможно сделать одним только CSS.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...