3

私は新しい Web サイトに取り組んでおり、コンテナー 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;
}

問題は、ページをロードすると、テザー ライブラリ内で例外が発生することです。

キャッチされていない TypeError: null のプロパティ 'classList' を読み取れません

ご協力いただきありがとうございます。

4

1 に答える 1

8

Tether のオプションelementは、andを文字列ではなく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 に答える