Master-X
Форум | Новости | Статьи
Главная » Форум » Программинг, Скрипты, Софт, Сервисы » 
Тема: Помогите с Java-скриптом
цитата
18/11/09 в 21:31
 violar
Привет всем! Имеется Java-скрипт, код которого указан ниже:
Код:

<script>
function vote () {
T55=window.open("http://site.com");
} function cancel () {}
if (confirm("НА САЙТЕ СОДЕРЖИТСЯ ИНФОРМАЦИЯ\nКАТЕГОРИИ \"ТОЛЬКО ДЛЯ ВЗРОСЛЫХ\"\n==========================\nЖмите OK, если Вам больше 18 лет")) {
vote();
} else cancel()
</script>


При входе на страницу данный скрипт выводит сообщение:



Если кликнуть по кнопке ОК, сообщение пропадает, загружается страница, плюс открывается дополнительное окно. В данном случае сайт http://site.com

Если же кликнуть по кнопке ОТМЕНА, то сообщение пропадает и открывается страница, на которую зашли.

Можно-ли как-то усовершенствовать данный скрипт, чтобы:

1. Скрипт срабатывал только один раз за сессию и по кнопке ОК дополнительное окно открывал бы на заднем плане (под основным окном)
2. По клику ОТМЕНА сообщение пропадало и производился бы редирект на какой-то другой URL
цитата
18/11/09 в 23:45
 Sterx
это стандартное диалоговое окно JS
2. с этим никак
1. за сессию - это как?
цитата
18/11/09 в 23:47
 Sterx
хотя вру
Код:

<script>
function vote () {
T55=window.open("http://site.com");
} function cancel () {}
if (confirm("НА САЙТЕ СОДЕРЖИТСЯ ИНФОРМАЦИЯ\nКАТЕГОРИИ \"ТОЛЬКО ДЛЯ ВЗРОСЛЫХ\"\n==========================\nЖмите OK, если Вам больше 18 лет")) {
vote();
} else document.location='другой URL';
</script>

цитата
18/11/09 в 23:50
 Yacc
Код:
<script>
function getCookie(name){
   var cookie=" "+document.cookie;
   var search=" "+name+"=";
   var value=null;
   var offset=0;
   var end=0;
   if(cookie.length>0){
      offset=cookie.indexOf(search);
      if(offset!=-1){
         offset+=search.length;
         end=cookie.indexOf(";",offset)
         if(end==-1) end=cookie.length;
         value=unescape(cookie.substring(offset,end));
      }
   }
   return(value);
}

function setCookie(name,value,expires,path,domain,secure){
   document.cookie=name+"="+escape(value)+
      ((expires)?"; expires="+expires:"")+
      ((path)?"; path="+path:"")+
      ((domain)?"; domain="+domain:"")+
      ((secure)?"; secure":"");
}

function openWindow(url){
   window.open(url);
}

function redirect(url){
   window.location=url;
}

function confirmAge(){
   return confirm("Already 18?");
}

var cookieEnabled=(navigator.cookieEnabled);

if (typeof navigator.cookieEnabled=="undefined" && !cookieEnabled){
   document.cookie="test";
   cookieEnabled=(document.cookie.indexOf("test")!=-1);
}

if(cookieEnabled){
   if(getCookie("Adult")==null) setCookie("Adult",confirmAge());
   (getCookie("Adult")=="true")?openWindow("http://porn.com"):redirect("http://kids.com");
}
else (confirmAge())?openWindow("http://porn.com"):redirect("http://kids.com");
</script>

Вроде работает. icon_smile.gif
Насчёт "открывать окно на заднем плане" - лишнее это.
В правильных браузерах окно всё равно откроется во вкладке, а в правильно настроенных браузерах - не откроется вообще.


Эта страница в полной версии