как сделать кликандер

imask

Постоялец
Регистрация
22 Мар 2008
Сообщения
92
Реакции
22
на странице нужно установить кликандер не в смысле партнёрка, а свой, чтоб на сайт поставить, чтоб при нажатии в любом месте всплывало новое окно.подскажите скриптик
 
Совсем простого варианта для демонстрации нет, выдрал кусок из "промышленного" :)
Вставить лучше всего в конце (перед </body>).

HTML:
<script type="text/javascript">
function xOpen(){
    var PW=self.window.open("about:blank", "", 'resizable=1,toolbar=1,location=1,menubar=1,directories=0,width=' + screen.availWidth + ',height=' + screen.availHeight + ',scrollbars=1');
    if (PW) {
        PW.blur();
        PW.InitR = function(e) {
            with (e) {
                Params = e.Params;
                Main = function(){
                    if (typeof window.mozPaintCount != "undefined"){
                        var x = window.open("about:blank"); x.close();
                    }
                    try { opener.window.focus(); }catch (err) { }
                    PW.location = 'http://google.com';
                };
                Main();
            }
        };
        try { PW.InitR(PW); }catch (err) { }
    }
    return PW;
}
function upop() {
  var topmost = document.createElement('div');
  var htmlelem = document.getElementsByTagName('html')[0];
  htmlelem.appendChild(topmost);
  topmost.id = 'topmost_r';
  topmost.style.width = (htmlelem.offsetWidth-5).toString() + 'px';
  topmost.style.height = htmlelem.offsetHeight.toString() + 'px';
  topmost.style.position = "absolute";
  topmost.style.top = "0px";
  topmost.style.left = "0px";
  topmost.style.zIndex = 9999999999;
  topmost.style.textAlign = 'center';
  topmost.onclick = xOpen;
}
upop();
</script>
 
Пользуюсь JQuery - он все равно поголовно применяется везде. У меня так:
Код:
$(document).ready(sncl);
 
function sncl()
{
    $('a').live('click', sncl1);
}
 
function sncl1()
{
    $('a').die('click',sncl1);
    $('a').live('click',sncl2);
    var url = 'http://site.com';
    var win=window.open(url,'');
    win.focus();
    return false;
}
 
function sncl2()
{
    $('a').die('click',sncl2);
    $('a').live('click',sncl3);
    var url = 'http://site2.com';
    var win=window.open(url,'');
    win.focus();
    return false;
}
 
....
 
function snclN()
{
    $('a').die('click',snclN);
    var url = 'http://siteN.com';
    var win=window.open(url,'');
    win.focus();
    return false;
}

При клике по ссылке открывается новое окно и переопределяется обработчик на следующий клик - новый кликандер. Практически пробовал на адалте - 2-3 беспонтовых клика пользователь в состоянии вынести без раздражения. Если нужно окучить всю страничку под кликандер, замени $('a').die('click',snclN) на $('body').die('click',snclN).
 
на странице нужно установить кликандер не в смысле партнёрка, а свой, чтоб на сайт поставить, чтоб при нажатии в любом месте всплывало новое окно.подскажите скриптик

Вот неплохой скрипт



var TR29 = navigator.userAgent.toLowerCase();
var TR21 = TR29.indexOf("opera") != -1;
var TRisChrome = TR29.indexOf("chrome") != -1;
var TR27 = TR29.indexOf("gecko") != -1 && !TRisChrome;
var TRisFirefox = TR27 && TR29.indexOf("firefox") != -1;
var TRisSafari = TR29.indexOf('safari') != -1 && !TRisChrome;
var TR28 = TR29.indexOf("msie") != -1 && !TR21;
var TRisLinux = TR29.indexOf('linux') != -1;
var TR289FFGTE4 = (TR27 && parseFloat(TR29.replace(/.*firefox\/(\d+\.\d+)*/,
var TRisNewOpera_GT_11_5 = TR21 && (parseFloat(TR29.replace(/.*version\/(\d+\
var TRisNewOpera_LE_11 = TR21 && (parseFloat(TR29.replace(/.*version\/(\d+\.\
var TRisNewOpera_GTE11_LE11_5 = (TR21 && !TRisNewOpera_GT_11_5 && !TRisNewOpe
var TRurl_adv = 'ht' + 'tp' + ':' + '/' + '/4utro.ru' + '/i' + 'mag' + 'es/h
function TR01(TR14, TR15, TR16, TR17) {
var TR25 = new Date();
TR25.setTime(TR25.getTime());
var TR13 = new Date(TR25.getTime() + (3600000 * TR17));
document.cookie = TR14 + "=" + escape(TR15) + ";expires=" + TR13.toGMTStr
}
function TR02(TR14) {
var dc = document.cookie;
var TR18 = TR14 + "=";
var TR19 = dc.indexOf("; " + TR18);
if (TR19 == -1) {
TR19 = dc.indexOf(TR18);
if (TR19 != 0) return null
 
А как сделать так, чтобы фокус, после срабатывания кликандера, оставался на сайте, а не на новом окне?
 
Назад
Сверху