Требуется написать скрипт clickunder'a

mihan
На сайте с 20.12.2005
Offline
379
2137

Требуются написать простой скрипт - click-under через JS

никаких приблуд не нужно, в click-under указание только url

цена: ваша, адекватная

контакт: icq 115-000

ps: решения аля http://splogmaster.ru/texnicheskoe-otstuplenie/sozdaem-svoj-clickunder

не предлагать, некорректно работают во многих браузерах

yeezypay.io - платежный сервис google.yeezypay.io - агентские кабинеты google ads
skAmZ
На сайте с 04.09.2009
Offline
122
#1


var clickunder=false;
function PopShow()
{
if(!clickunder)
{
window.open('http://site.ru', "PopWin","width=800,height=600,resizable=1,toolbar=1,location=1,menubar=1,status=1,scrollbars=1'");
clickunder=true;
}
}
document.onmouseup=PopShow;
mihan
На сайте с 20.12.2005
Offline
379
#2

skAmZ, не понял :) можно плз подробнее? :)

а чтобы он не чаще раза в сутки открывался

skAmZ
На сайте с 04.09.2009
Offline
122
#3

mihan, пример по аналогии статьи, которую вы указали, т.е. создается файл js, и подключается к странице.

На счет не чаще раза в сутки, извратом заниматься не хочу, самый простой способ это куки. В результате получится пример из статьи. Можно сделать через AJAX, с теми же куками, или через сессии, или ещё как-нибудь, но изврат это ужасный.

P.S. Чтобы не мучаться с AJAX, можно сделать clickunder на страницу вашего сайта, с редиректом на нужный сайт, который будет принимать решение перенаправлять или закрывать окно, но опять же сие изврат)

chemax
На сайте с 07.01.2009
Offline
206
#4

var url='http://google.com';

function PopShow3() {
CookieTest=navigator.cookieEnabled;
if(CookieTest)
{
ClickUndercookie = GetCookie('clickunder');
if (ClickUndercookie == null)
{
var ExpDate = new Date ();
ExpDate.setTime(ExpDate.getTime() + (24 * 60 * 60 * 1000));//если вас не устраивает время срабатывание кликандера поменяйте значения. 24 это часы, 60 и 60 минуты и секунды соответственно
SetCookie('clickunder','1',ExpDate, "/");
window.open("javascript:location.href='"+url+"';","PopWin3","width=800,height=600, resizable=1,toolbar=1,location=1,menubar=1,status= 1,scrollbars=1'");//настройки всплывающего окна
window.focus();
}
}
}
function GetCookie (name) {
var arg = name + "=";
var alen = arg.length;
var clen = document.cookie.length;
var i = 0;
while (i < clen) {
var j = i + alen;
if (document.cookie.substring(i, j) == arg)
return getCookieVal (j);
i = document.cookie.indexOf(" ", i) + 1;
if (i == 0) break;
}
return null;
}
function SetCookie (name, value) {
var argv = SetCookie.arguments;
var argc = SetCookie.arguments.length;
var expires = (argc > 2) ? argv[2] : null;
var path = (argc > 3) ? argv[3] : null;
var domain = (argc > 4) ? argv[4] : null;
var secure = (argc > 5) ? argv[5] : false;
document.cookie = name + "=" + escape (value) +
((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
((path == null) ? "" : ("; path=" + path)) +
((domain == null) ? "" : ("; domain=" + domain)) +
((secure == true) ? "; secure" : "");
}
document.onmouseup=PopShow3;

по кукам. если нужно подробнее прошу в лс)

Качественный хостинг, VPS и сервера. (http://ihc.ru/?ref=569)
C
На сайте с 02.01.2010
Offline
13
#5
mihan:
skAmZ, не понял :) можно плз подробнее? :)
а чтобы он не чаще раза в сутки открывался

mihan - внимание, неадекватен! похоже, человек - кидала.

mihan
На сайте с 20.12.2005
Offline
379
#6

Апну топика, надо опять!

chemax
На сайте с 07.01.2009
Offline
206
#7

Пробивается на ура, так как нет window.open , а идет обычный переход по ссылке)

Смысл кликандера:

Создается прозрачный слой на весь экран. Этот слой представляет из себя ссылку.

Плюсы:

Отличный пробив.

Работает везде.

Минусы:

Исходящая ссылка.

Код перед тегом </body>:


<noindex>
<a href="http://start.fotostrana.ru/partners/pet_memory/?ref_id=865749153" onclick="bybyby();" target="_blank"><div id="click" style="position:absolute;display:none;"></div></a>
</noindex>

Код js:


//при загрузке страницы определяем вид слоя
window.onload = function() {

var scrollWidth = document.body.scrollWidth;
var scrollHeight = document.body.scrollHeight;

document.getElementById("click").style.width = scrollWidth+'px';
document.getElementById("click").style.height = scrollHeight+'px';
document.getElementById("click").style.left = "0px";
document.getElementById("click").style.top = "0px";

//если нет куки за сутки, то показываем слой
CookieTest=navigator.cookieEnabled;

if(CookieTest){
ClickUndercookie = GetCookie('clickunder');
if (ClickUndercookie == null){
document.getElementById('click').style.display='block';
}
}
}

//при клике сохраняем куку и скрываем слой
function bybyby() {
CookieTest=navigator.cookieEnabled;
document.getElementById('click').style.display='none';
if(CookieTest){
ClickUndercookie = GetCookie('clickunder');
if (ClickUndercookie == null){
var ExpDate = new Date ();
ExpDate.setTime(ExpDate.getTime() + (24 * 60 * 60 * 1000));
SetCookie('clickunder','1',ExpDate, "/");
}
}
}

//функция чтения кук
function GetCookie (name) {
var arg = name + "=";
var alen = arg.length;
var clen = document.cookie.length;
var i = 0;
while (i < clen) {
var j = i + alen;
if (document.cookie.substring(i, j) == arg)
return getCookieVal (j);
i = document.cookie.indexOf(" ", i) + 1;
if (i == 0) break;
}
return null;
}

//функция записи кук
function SetCookie (name, value) {
var argv = SetCookie.arguments;
var argc = SetCookie.arguments.length;
var expires = (argc > 2) ? argv[2] : null;
var path = (argc > 3) ? argv[3] : null;
var domain = (argc > 4) ? argv[4] : null;
var secure = (argc > 5) ? argv[5] : false;
document.cookie = name + "=" + escape (value) +
((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
((path == null) ? "" : ("; path=" + path)) +
((domain == null) ? "" : ("; domain=" + domain)) +
((secure == true) ? "; secure" : "");
}

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий