Реклама на сайте Advertise with us

Как ограничить оупенер?

Расширенный поиск по форуму
 
Новая тема Новая тема   
Автор
Поиск в теме:



С нами с 10.07.07
Сообщения: 486
Рейтинг: 347

Ссылка на сообщениеДобавлено: 15/01/18 в 23:10       Ответить с цитатойцитата 

Скрипт:
<script>if (parent.window.opener) parent.window.opener.location='http://mydomain.com';</script>
Можно ли как-то ограничить число срабатываний скрипта для одного посетителя? Скажем, три раза открывает mydomein - и все, до следующей сессии?

Лей уверенно, здесь проверено

0
 



С нами с 18.04.15
Сообщения: 100
Рейтинг: 138

Ссылка на сообщениеДобавлено: 15/01/18 в 23:47       Ответить с цитатойцитата 

Привет. При помощи кук можно. При срабатывании скрипта:

Код:
Если куки не существует {
    Срабатываем скрипт;
    Пишем куку со значением 1;
} иначе, если кука есть {
    Читаем значение куки;
    Если кука меньше-равно трёх {
        Срабатываем скрипт;
        Значение куки увеличиваем на 1;
    }
}


Если на ЖС:

Код:
<script>
    function getCookie(cname) { /* Функция чтения куки */
        var name = cname + "=";
        var decodedCookie = decodeURIComponent(document.cookie);
        var ca = decodedCookie.split(';');
        for(var i = 0; i <ca.length; i++) {
            var c = ca[i];
            while (c.charAt(0) == ' ') {
                c = c.substring(1);
            }
            if (c.indexOf(name) == 0) {
                return c.substring(name.length, c.length);
            }
        }
        return "";
    }

    function setCookie(cname, cvalue, exdays) { /* Функция установки куки */
        var d = new Date();
        d.setTime(d.getTime() + (exdays*24*60*60*1000));
        var expires = "expires="+ d.toUTCString();
        document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
    }

    /* И собстно сам алгоритм */
    if(!getCookie("itwasopened")) {
        if (parent.window.opener) parent.window.opener.location='http://mydomain.com';
        setCookie("itwasopened", 1, 1);
    } else {
        var wasit = getCookie("itwasopened");
        if(wasit <= 3) {
        if (parent.window.opener) parent.window.opener.location='http://mydomain.com';
            wasit++;
            setCookie("itwasopened", wasit, 1);
        }
    }
</script>


P.S. При отключеных куках работать не будет, естессно icon_smile.gif

Buy and Sell Links!

10
 



С нами с 10.07.07
Сообщения: 486
Рейтинг: 347

Ссылка на сообщениеДобавлено: 16/01/18 в 18:30       Ответить с цитатойцитата 

Ага, спасибочки smail54.gif

Лей уверенно, здесь проверено

2
 



С нами с 16.06.12
Сообщения: 8470
Рейтинг: 313

Ссылка на сообщениеДобавлено: 17/01/18 в 00:52       Ответить с цитатойцитата 

Akira07: только не используй, опенер во зло smail34.gif

3
 
Новая тема Новая тема   

Текстовая реклама в форме ответа
Заголовок и до четырех строчек текста
Длина текста до 350 символов
Купить рекламу в этом месте!


Перейти:  



Спонсор раздела Стань спонсором этого раздела!

Реклама на сайте Advertise with us

Опросы

Рецепт новогоднего блюда 2022



Обсудите на форуме обсудить (11)
все опросы »