3

我正在开发一个新网站,我想在容器 div 的底部添加一个页脚。

我找到了一个名为 Tether ( http://github.hubspot.com/tether/ ) 的 javascript 库,但我在实现时遇到了问题。

下面是我的 HTML 代码

<html>
    <head>
        <title>Bug Reporting</title>
        <link href="StyleSheet.css" type="text/css" rel="stylesheet" />
        <script src="includes/jquery.js"></script>
        <script src="includes/tether/tether.js"></script>
        <script>
            $(document).ready(function()
            {
                new Tether({
                    element: '.footer',
                    target: '.container',
                    attachment: 'top left',
                    targetAttachment: 'bottom left'
                });
            });
        </script>
    </head>
    <body>
        <div class="container">
            <header>
                This is the body
            </header>

            <div id="content">
                This is the content<br />
            </div>

            <div class="footer1">
                This is the footer
            </div>
        </div>
    </body>
</html>

下面是我的样式表

html, body
{
    font-family: arial;
    margin: 0;
    padding: 0;
}

header
{
    background-color: red;
    width: 100%;
    height: 80px;
}

.container
{
    background-color: yellow;
    height: calc(100% - 80px);
    width: 100%;
}

#content
{
    background-color: blue;
    width: 1024px;
    margin-left: auto;
    margin-right: auto;
    height: auto;
}

.footer1
{
    position: absolute;
    background-color: green;
    width: 100%;
    height: 80px;
}

问题是当我加载页面时,我在系绳库中遇到异常

未捕获的类型错误:无法读取 null 的属性“classList”

感谢您的任何帮助,您可以提供。

4

1 回答 1

8

Tether 的选项elementand定义target为 DOM 或 jQuery元素(从广义上讲),而不是字符串。

您需要将 jQuery 对象传递给 Tether,如下所示:

$(document).ready(function() {
    new Tether({
        element: $('.footer'),
        target: $('.container'),
        attachment: 'top left',
        targetAttachment: 'bottom left'
    });
});

在初始化 Tether 实例时,还要确保元素在页面上。

于 2014-01-31T23:15:56.423 回答