Вывод ссылки
Есть вот такой вот код:
<script>
$(function(){
$('#link6').click(function(){
window.open("view.php?ad=6", '_blank');
});
});
</script>
<table class='work-serf' width='100%' border='0' cellpadding='0' cellspacing='0'>
<tr>
<td class='normal' width='40' valign='top'>
<span class="serfimghigh"></span></td>
<td class='normal' valign='top' style='font-size:11px;padding-top:10px;'>
Мы предлагаем<span id='link6' class='serfgo'> ва</span>м прямо сейчас начать зарабатывать на нашем проекте.
</td>
</tr></table>
Суть его в том, что нажимая на определнный участок текста у нас открывается новая страница. 1) Как сделать чтоб сначала мы нажимаем на определнный текст, 2) Далее вместо текста надпись перейти на сайт. 3) И После перехода на сайт, у нас появится надпись: спасибо что перешли. Если кто может помогите пожалуйста |
Цитата:
И, BTW, open большинством браузеров блокируется сейчас, лучше его не пользовать. |
Не на новом сайте, а на старом сайте место кнопки перейти появится спасибо что перешли
|
Вот так выглядит 1,2,3 стадии |
<!DOCTYPE html>
<html>
<head>
</head>
<div id="wrapper">
<button>GO</button>
</div>
<body>
<script>
wrapper=document.querySelector("#wrapper")
go=function(){setTimeout(function(){open("http://javascript.ru")}, 1000)}
wrapper.onclick=function(){this.innerHTML="<span>Thanks</span>", go()}
</script>
</body>
</html>
|
что та не совсем так как нужно.
надо вот так: Нажимаю на текст, вылазит ссылка место текста, перехожу по ссылке, и место ссылки текст номер 2 |
Что-то вроде этого наверное. Полностью рабочий код протестить дать не могу, спать охота :) но направление куда двигаться ты надеюсь поймешь.
$('#link6').click(function(){
$('#link6').off('click');
$(this).html($('<a class="real_href" href="туда">Туда</a>'))
$(this).find('.real_href').on('click',function(){
$(this).html('<p>молодец что нажал</p>')
window.open($(this).attr('href'), '_blank');
})
});
|
<!DOCTYPE html>
<html>
<head>
</head>
<div id="wrapper">
<p>The Best Partner Programm here</p>
</div>
<body>
<script>
wrapper=document.querySelector("#wrapper")
go=function(){ wrapper.innerHTML="thanks"; setTimeout(function(){open("http://javascript.ru")}, 1000);}
wrapper.onclick=function(){this.innerHTML="<a href='#'>click here to go to the site</a>"; this.onclick=go}
</script>
</body>
</html>
|
Сделал для нескольких ссылок, но не работает чего-то, только по 1
<script>
wrapper=document.querySelector("#wrapper3")
go=function(){ wrapper.innerHTML="thanks"; setTimeout(function(){open("view.php?ad=7")}, 1000);}
wrapper.onclick=function(){this.innerHTML="<div class='gos'>Переход по ссылке</div>"; this.onclick=go}
</script>
<script>
wrapper=document.querySelector("#wrapperc")
go=function(){ wrapper.innerHTML="thanks"; setTimeout(function(){open("view.php?ad=6")}, 1000);}
wrapper.onclick=function(){this.innerHTML="<div class='gos'>Переход по ссылке</div>"; this.onclick=go}
</script>
<script>
wrapper=document.querySelector("#wrapper5")
go=function(){ wrapper.innerHTML="thanks"; setTimeout(function(){open("view.php?ad=5")}, 1000);}
wrapper.onclick=function(){this.innerHTML="<div class='gos'>Переход по ссылке</div>"; this.onclick=go}
</script>
<div id='wrapper3'><span class='serfgo'>222</span>222222</div>
<div id='wrapperc'>Мы предлагаем вам прямо сейчас нача<span class='serfgo'>ть </span>зарабатывать на нашем проек</div>
<div id='wrapper5'>Д<span class='serfgo'>обр</span>о пожаловать</div>
|
и еще проблема, когда появляется thanks, если еще раз на него нажать то перейдет опять по ссылке, а такого быть не должно
|
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<div id="wrapper1">
<p>best partners 1</p>
</div>
<div id="wrapper2">
<p>best partners 2</p>
</div>
<body>
<div id="wrapper3">
<p>best partners 3</p>
</div>
<body>
<script>
get=document.querySelector.bind(document)
wrapper1=get("#wrapper1")
wrapper2=get("#wrapper2")
wrapper3=get("#wrapper3")
go=function(el){return function(){ el.innerHTML="thanks"; el.onclick=null; setTimeout(function(){open("http://javascript.ru")}, 1000);}}
wrapper1.onclick=wrapper2.onclick=wrapper3.onclick=function(){
this.innerHTML="<a href='#'>click here to go to the site</a>"; this.onclick=go(this)}
</script>
</body>
</html>
|
еще можно чтоб когда thanks и нажимаешь не перекидывало снова на сайт
|
Цитата:
|
Осталось проблема еще одна, я ссылки добавляю они друг за другом идут, около 100 ссылок всего будет. Нельзя ли по другому как-то сделать? а то много id писать для 100 ссылок
|
они у меня идут с айди с базы, можно эти айди как-то вписать?
|
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<div name="wrapper">
<p>best partners 1</p>
</div>
<div name="wrapper">
<p>best partners 2</p>
</div>
<body>
<div name="wrapper">
<p>best partners 3</p>
</div>
<body>
<script>
partners=document.getElementsByName("wrapper")
go=function(el){return function(){ el.innerHTML="thanks"; el.onclick=null; setTimeout(function(){open("http://javascript.ru")}, 1000);}}
redirect=function(){
this.innerHTML="<a href='#'>click here to go to the site</a>"; this.onclick=go(this)}
for(i=0; i<partners.length; i++) partners[i].onclick=redirect
</script>
</body>
</html>
|
porezon,
таймаут можешь убрать, кстати, это просто для наглядности, технически он там не нужен. |
теперь проблема с ссылками, разные ссылки везде, а открывает одну и туже
|
Ты ссылки в чем хранишь, в массиве?
|
они в базе , вывожу их через mysql_fetch_assoc
|
<table class='work-serf' width='100%' border='0' cellpadding='0' cellspacing='0'> <tr> <td class='normal' valign='top' style='font-size:12px;padding-top:10px;'> <div id='wrapper'>22<span class='serfgo'>222</span>2222</div> </td> </tr> </table> <table class='work-serf' width='100%' border='0' cellpadding='0' cellspacing='0'> <tr> <td class='normal' valign='top' style='font-size:12px;padding-top:10px;'> <div id='wrapper'>22<span class='serfgo'>222</span>2222</div> </td> </tr> </table> <table class='work-serf' width='100%' border='0' cellpadding='0' cellspacing='0'> <tr> <td class='normal' valign='top' style='font-size:12px;padding-top:10px;'> <div id='wrapper'>22<span class='serfgo'>222</span>2222</div> </td> </tr> </table> <table class='work-serf' width='100%' border='0' cellpadding='0' cellspacing='0'> <tr> <td class='normal' valign='top' style='font-size:12px;padding-top:10px;'> <div id='wrapper'>22<span class='serfgo'>222</span>2222</div> </td> </tr> </table> <table class='work-serf' width='100%' border='0' cellpadding='0' cellspacing='0'> <tr> <td class='normal' valign='top' style='font-size:12px;padding-top:10px;'> <div id='wrapper'>Мы предлагаем вам прямо сейчас начать <span class='serfgo'>зар</span>абатывать на нашем проек</div> </td> </tr> </table> |
вот так вот они идут друг за другом
|
porezon,
я там ссылки не вижу. Они, наверное, генерируются каким-то внешним кодом, вряд ли я смогу тут помочь. Ссылки -- это код вида <a href="http://site.ru">link</a>. Или, хотя бы адреса. Там их нет. |
я их вставляю туда где ты прописал, и получается вот такое вот всё
|
<script>
partners=document.getElementsByName("wrapper")
go=function(el){return function(){ el.innerHTML="<div class='ok'>Спасибо за просмотр</div>"; el.onclick=null; setTimeout(function(){open("view.php?ad=7")}, 1000);}}
redirect=function(){this.innerHTML="<div class='gos'>Просмотреть сайт рекламодателя</div>"; this.onclick=go(this)}
for(i=0; i<partners.length; i++) partners[i].onclick=redirect
</script>
<table class='work-serf' width='100%' border='0' cellpadding='0' cellspacing='0'>
<tr>
<td class='normal' width='40' valign='top'>
<span class="serfimghigh"></span></td>
<td class='normal' valign='top' style='font-size:12px;padding-top:10px;'>
<div name='wrapper'>22222<span class='serfgo'>222</span>2<br />
<span class='desctext'>http://2222222222 | Таймер: 20 сек. | (new) | <span class="clickprice">VIP</span></span>
</div>
</td>
<td class='normal' nowrap='nowrap' valign='top' style='width: 70px; text-align: right; padding-right: 10px;'>
<span class='smoolgray' title='Осталось визитов'>(100) </span>
<span class='clickprice' title='Стоимость просмотра'>0.021 руб.</span><br />
<a class='workcompn' onclick='hideserfaddblock("comp69");' href="/zhaloba.php?id=7" title='Пожаловаться на рекламу'></a>
<a class='workevents' target='_blank' title='Рекламодатель' href='wall.php?user=988'></a>
<a class='workvirs' href='http://online.us.drweb.com/result/?url=http://2222222222' title='Проверить ссылку на вирусы' target='_blank'></a>
</td>
</tr>
</table>
<script>
partners=document.getElementsByName("wrapper")
go=function(el){return function(){ el.innerHTML="<div class='ok'>Спасибо за просмотр</div>"; el.onclick=null; setTimeout(function(){open("view.php?ad=6")}, 1000);}}
redirect=function(){this.innerHTML="<div class='gos'>Просмотреть сайт рекламодателя</div>"; this.onclick=go(this)}
for(i=0; i<partners.length; i++) partners[i].onclick=redirect
</script>
<table class='work-serf' width='100%' border='0' cellpadding='0' cellspacing='0'>
<tr>
<td class='normal' width='40' valign='top'>
<span class="serfimghigh"></span></td>
<td class='normal' valign='top' style='font-size:12px;padding-top:10px;'>
<div name='wrapper'>Мы предлагаем вам прямо сей<span class='serfgo'>час</span> начать зарабатывать на нашем проек<br />
<span class='desctext'>http://rashabux.ru | Таймер: 20 сек. | (new) </span>
</div>
</td>
<td class='normal' nowrap='nowrap' valign='top' style='width: 70px; text-align: right; padding-right: 10px;'>
<span class='smoolgray' title='Осталось визитов'>(250) </span>
<span class='clickprice' title='Стоимость просмотра'>0.021 руб.</span><br />
<a class='workcompn' onclick='hideserfaddblock("comp69");' href="/zhaloba.php?id=6" title='Пожаловаться на рекламу'></a>
<a class='workevents' target='_blank' title='Рекламодатель' href='wall.php?user=988'></a>
<a class='workvirs' href='http://online.us.drweb.com/result/?url=http://rashabux.ru/' title='Проверить ссылку на вирусы' target='_blank'></a>
</td>
</tr>
</table>
<script>
partners=document.getElementsByName("wrapper")
go=function(el){return function(){ el.innerHTML="<div class='ok'>Спасибо за просмотр</div>"; el.onclick=null; setTimeout(function(){open("view.php?ad=5")}, 1000);}}
redirect=function(){this.innerHTML="<div class='gos'>Просмотреть сайт рекламодателя</div>"; this.onclick=go(this)}
for(i=0; i<partners.length; i++) partners[i].onclick=redirect
</script>
<table class='work-serf' width='100%' border='0' cellpadding='0' cellspacing='0'>
<tr>
<td class='normal' width='40' valign='top'>
<span class="serfimghigh"></span></td>
<td class='normal' valign='top' style='font-size:12px;padding-top:10px;'>
<div name='wrapper'>Добр<span class='serfgo'>о п</span>ожаловать<br />
<span class='desctext'>http://rashabux.ru | Таймер: 20 сек. | (new) </span>
</div>
</td>
<td class='normal' nowrap='nowrap' valign='top' style='width: 70px; text-align: right; padding-right: 10px;'>
<span class='smoolgray' title='Осталось визитов'>(100) </span>
<span class='clickprice' title='Стоимость просмотра'>0.021 руб.</span><br />
<a class='workcompn' onclick='hideserfaddblock("comp69");' href="/zhaloba.php?id=5" title='Пожаловаться на рекламу'></a>
<a class='workevents' target='_blank' title='Рекламодатель' href='wall.php?user=988'></a>
<a class='workvirs' href='http://online.us.drweb.com/result/?url=http://rashabux.ru/' title='Проверить ссылку на вирусы' target='_blank'></a>
</td>
</tr>
</table>
<script>
partners=document.getElementsByName("wrapper")
go=function(el){return function(){ el.innerHTML="<div class='ok'>Спасибо за просмотр</div>"; el.onclick=null; setTimeout(function(){open("view.php?ad=3")}, 1000);}}
redirect=function(){this.innerHTML="<div class='gos'>Просмотреть сайт рекламодателя</div>"; this.onclick=go(this)}
for(i=0; i<partners.length; i++) partners[i].onclick=redirect
</script>
|
porezon,
А зачем столько скриптов? нужен один, в конце body. Откуда ты вот эти ссылки view.php?ad=3 выдергиваешь? тебе по ним переходы нужны, насколько я понял? |
да по этим ссылкам переходы, обработчик обрабатывает цифру, и кидает нужной цифре на нужный сайт. я не могу один ставить. тогда не вставлю сссылку
|
Не уверен, что правильно понял, но если вопрос чисто в расстоновке номеров, можешь вот так попробовать
<!DOCTYPE html>
<html>
<head>
</head>
<div name="wrapper">
<p>best partners 1</p>
</div>
<body>
<div name="wrapper">
<p>best partners 2</p>
</div>
<body>
<div name="wrapper">
<p>best partners 3</p>
</div>
<body>
<script>
partners=document.getElementsByName("wrapper")
go=function(el, num){return function(){ el.innerHTML="thanks"; el.onclick=null; open("view.php?ad="+num)}}
redirect=function(num){return function(){
this.innerHTML="<a href='#'>click here to go to the site</a>"; this.onclick=go(this, num)}}
for(i=0; i<partners.length; i++) partners[i].onclick=redirect(i+1)
</script>
</body>
</html>
|
там где номера идут, там совсем разные могут от 1 до 100000 быть.
|
мне надо бы как-то этот номер передать в эту форму
Вот типа как-то так <div name="wrapper" id="22"> <p>best partners 1</p> </div> <div name="wrapper" id="1242"> <p>best partners 2</p> </div> и потом этот номер вывести в скрипт и чтоб перешло по нужной ссылке |
porezon,
Ссылка по id формируется? |
да, если какого-то ид нет в базе, ошибку выдаст. Надо как-то передавать иды, вывожу ид я вот так <?=$idh;?>
|
<!DOCTYPE html>
<html>
<head>
</head>
<div name="wrapper" id="1">
<p>best partners 1</p>
</div>
<body>
<div name="wrapper" id="2">
<p>best partners 2</p>
</div>
<body>
<div name="wrapper" id="3">
<p>best partners 3</p>
</div>
<body>
<script>
partners=document.getElementsByName("wrapper")
go=function(el){return function(){ el.innerHTML="thanks"; el.onclick=null; open("view.php?ad="+this.id)}}
redirect=function(){
this.innerHTML="<a href='#'>click here to go to the site</a>"; this.onclick=go(this)}
for(i=0; i<partners.length; i++) partners[i].onclick=redirect
</script>
</body>
</html>
|
Работает!!! Большое спасибо
|
porezon,
Даже лучше так:
<!DOCTYPE html>
<html>
<head>
</head>
<div name="wrapper" id="1">
<p>best partners 1</p>
</div>
<body>
<div name="wrapper" id="2">
<p>best partners 2</p>
</div>
<body>
<div name="wrapper" id="3">
<p>best partners 3</p>
</div>
<body>
<script>
partners=document.getElementsByName("wrapper")
go=function(){this.innerHTML="thanks"; this.onclick=null; open("view.php?ad="+this.id)}
redirect=function(){
this.innerHTML="<a href='#'>click here to go to the site</a>"; this.onclick=go}
for(i=0; i<partners.length; i++) partners[i].onclick=redirect
</script>
</body>
</html>
Не нужен там в go явный аргумент с замыканием. Это я че то запарился. |
еще проблемка.
вот так сейчас выглдит код:
<script language="javascript" type="text/javascript">
partners=document.getElementsByName("wrapper")
go=function(){this.innerHTML="<div class='ok'>Спасибо за просмотр</div>";this.onclick=null; open("view.php?ad="+this.id)}
redirect=function(){this.innerHTML="<div class='gos'>Просмотреть сайт рекламодателя</div>"; this.onclick=go}
for(i=0; i<partners.length; i++) partners[i].onclick=redirect
</script>
<table class='work-serf' width='100%' border='0' cellpadding='0' cellspacing='0'><tr><td>
<div>Добро пожало<span name='wrapper' id='5' class='serfgo'>ват</span>ь<br />
<span class='desctext'>http://rashabux.ru | Таймер: 20 сек. | (new) </span>
</div>
</td></tr></table>
но проблемма сейчас такая, что часть текста пропадат только, там где спан. На весь текст я немогу поставить спан, только на 3 символа из текста. Надо как-то сделать чтоб остальной текст тоже пропадал. |
![]() вот так выглядит. Лишней текст бы убрать как-то |
porezon,
А почему нельзя выводить вместо этого говна <div>Добро пожало<span name='wrapper' id='5' class='serfgo'>ват</span>ь<br /> <span class='desctext'>http://rashabux.ru | Таймер: 20 сек. | (new) </span> </div> Например вот так <span name='wrapper' id='5' class='serfgo'>Добро пожаловать</span><br /> <span class='desctext'>http://rashabux.ru | Таймер: 20 сек. | (new) </span> ? Я, честно сказать, запарился решать твои проблемы, которые уже далеко за гранью патологии. |
Тогда я могу нажать на любую часть ссылки, а мне надо только 3 ссимвола нажимать из всего текста.
Я так сначала и сделал, но смысл потерялс из 3 символов |
расскажи как вставить просто в этот див скрытие текста. И я уже сам подставлю как нужно
|
| Часовой пояс GMT +3, время: 06:53. |