Вызов функции cookie-jquery в теле?

0

Мне нужна помощь, у меня есть код jquery для cookie, принимаемого от моего друга, мы должны использовать его в Дании.

Моя проблема в том, что я действительно не знаю, как вызвать функцию в моем теле в html?

Может кто-нибудь помочь, я получил код в jsFiddle, который вам будет легко взглянуть.

HTML:

This is a test


<script>
    jQuery(document).load(_cookieAccept);
</script>

JS:

var _cookieAccept = {

    init: function () {

        if (this.hasAccepted()) {
            return;
        }

        //
        var bar = $j('<div>')
            .addClass('cookieAccept')
            .append($j('<span>').html('<img src="http://www.computerworld.dk/common/images/cookie_warning_1.gif" />Websitet anvender cookies til at huske dine indstillinger, statistik og at målrette annoncer. <a class="readMore" href="/privacy" target="_blank">Læs mere</a>'))
            .append($j('<a>').attr('href', 'javascript:void(0)').addClass('accept').html('OK').click(this.clickAccept))

        //
        bar.css({
            position: 'fixed',
            left: 0,
            bottom: 0,
            width: '100%',
            backgroundColor: 'rgba( 0, 0, 0, 0.7 )',
            color: '#ffffff',
            padding: '15px',
            fontSize: 16,
            lineHeight: '20px',
            fontFamily: 'Arial',
            zIndex: 10000,
            textAlign: 'left'
        });

        bar.find('a.readMore').css({
            color: '#ffffff',
            textDecoration: 'underline',
            fontWeight: 'normal'
        });

        bar.find('a.accept').css({
            float: 'right',
            marginRight: '50px',
            backgroundColor: '#ffffff',
            padding: '5px 20px',
            borderRadius: '4px',
            color: '#000000',
            fontSize: '14px'
        });

        bar.find('a.accept').hover(function () {
            $j(this).css('backgroundColor', '#7c94a0');
        }, function () {
            $j(this).css('backgroundColor', '#ffffff');
        });

        //
        $j('body').append(bar);
    },

    /**
     * 
     */
    hasAccepted: function () {
        return (document.cookie.indexOf('cookieAccept=Yes') !== -1);
    },

    /**
     * 
     */
    setAccept: function () {
        var expire = new Date();
        expire.setDate(expire.getDate() + (365 * 10));
        document.cookie = 'cookieAccept=Yes;expires=' + expire.toGMTString() + ';path=/';
    },

    /**
     * 
     */
    clickAccept: function () {

        _cookieAccept.setAccept();

        $j('div.cookieAccept').hide();
    }
};

$j(document).ready($j.proxy(_cookieAccept.init, _cookieAccept));

http://jsfiddle.net/k23MC/

  • 0
    Аргумент .load() должен быть вызываемой функцией, а не объектом.
Теги:
cookies
session-cookies

1 ответ

0
<script type="text/javascript">
    <!-- Your code here -->
</script>

Должно делать работу нормально, даже внутри тега тела, это не имеет значения.

Проверьте с помощью firebug или аналогичных инструментов, если у вас есть какие-либо синтаксические ошибки в консоли или около того.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню