如何优雅地从Jquery轮播降级到css滚动列表

时间:2011-02-28 15:04:36

标签: jquery internet-explorer-8 graceful-degradation jcarousellite

更新

我在下面的脚本中添加了这两行:我运行了调试器,执行似乎是删除了属性,但网页继续显示滚动条。

       $("#newsticker-demo").removeAttr("overflow-y");
        $("#newsticker-demo").removeAttr("height");

<script type="text/javascript" language="javascript">
    $(function () {

        $(".newsticker-jcarousellite").jCarouselLite({
            vertical: true,
            visible: 1,
            auto: 1,
            speed: 8000,
            circular: true
        });
        $("#newsticker-demo").removeAttr("overflow-y");
        $("#newsticker-demo").removeAttr("height");
    });
</script> 

- 现在IE8是我的第一关注点 -

您好,在我们的主页上有一个垂直滚动旋转木马。我想要做的是如果javascript被关闭,优雅地无法使用css。因此,结果是带有垂直滚动条的文本,用户可以单击并拖动以在列表中移动。类似于您在textarea元素上发现的内容,它有太多数据无法一次显示。

链接到主页。 http://beta.sc-pa.com/home/pasite-home.asp

完成后。

1 个答案:

答案 0 :(得分:1)

我将从一个解决方案开始使用sans-Javascript,然后应用您的滚动轮播,必要时操纵DOM。基本概念很简单:具有overflow-y: auto

的固定高度容器
<style>
#foo {
    width: 100px;
    height: 150px;
    overflow-y: scroll;
}
#foo.carouselled {
    overflow: hidden;
}
</style>

<script>
$(function() {
    $('#foo').jCarouselLite({
        vertical: true,
        visible: 1,
        auto: 1,
        speed: 8000,
        circular: true
    }).addClass('carouselled');
});
</script>

<div id="foo">
    <p>bar</p>
    <p>bar</p>
    <p>bar</p>
    <p>bar</p>
    <p>bar</p>
    <p>bar</p>
    <p>bar</p>
    <p>bar</p>
    <p>bar</p>
    <p>bar</p>
    <p>bar</p>
    <p>bar</p>
    <p>bar</p>
</div>

请参阅example

样式是CSS值而不是直接归因于元素,使用jQuery操作样式使用css()函数。