Чуток надо доработать скрипт имени.
Есть скрипт, при заходе на страницу спрашивает имя и запоминает куки, если нажал на отмену или крестик ставится определенное имя например unnamed,
но есть 2 проблемы... 1 проблемма - нужно как то сделать через ссылку, удаления имени чтобы при заходе на эту страницу его опять спросили имя. то есть удаления куков имени. и 2 проблемма - ели не ввести ничего и нажать ОК то будет пустое имя а не unnamed как хотелось бы... я сам в яве не шарю если и шарю поверхностно.. и так сам скрипт: <a href="">Поменять ник</a> <SCRIPT LANGUAGE="JavaScript"> var username = GetCookie('username'); if (username == null) { username = prompt('Введите ваш ник на АНГЛИЙСКОМ!',""); if (username == null) { alert('Вы не ввели ваш ник, так что будет наш =) '); username = 'unnamed'; } else { // don't set the username cookie.... because the user refused to tell you. // they will be prompted next time.... pathname = location.pathname; myDomain = pathname.substring(0,pathname.lastIndexOf('/')) +'/'; // set expiry date to 1 year from now. var largeExpDate = new Date (); largeExpDate.setTime(largeExpDate.getTime() + (30 * 24 * 3600 * 1000)); SetCookie('username',username,largeExpDate,myDomain); } } function getCookieVal (offset) { var endstr = document.cookie.indexOf (";", offset); if (endstr == -1) endstr = document.cookie.length; return unescape(document.cookie.substring(offset, endstr)); } 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" : ""); } var today = new Date () var hrs = today.getHours(); document.writeln("тест"); document.writeln("ник: "+ username +""); </SCRIPT> |
На седьмой строчке сравнение должно быть не с null , а с пустой строкой, то есть "", или вобще просто if (!username) ...
А по удалению гугли чета типа deleteCookie. |
Цитата:
|
function del_cookie
(name) { document.cookie = 'roundcube_sessauth' + '=; expires=Thu, 01- Jan-70 00:00:01 GMT;'; } |
<script type="text/javascript"> function setcookie(a,b,c) {if(c){var d = new Date();d.setTime(d.getTime()+c);}if(a && b) document.cookie = a+'='+b+';path=/'+(c ? '; expires='+d.toUTCString() : '');else return false;} function getcookie(a) {var b = new RegExp(a+'=([^;]){1,}');var c = b.exec(document.cookie);if(c) c = c[0].split('=');else return false;return c[1] ? c[1] : false;} function deletecookie( name) {if ( getcookie( name ) ) document.cookie = name + '=1; expires=Thu, 01-Jan-1970 00:00:01 GMT; path=/';} </script> </script> <script type="text/javascript"> setcookie("Test",22222); alert(getcookie("Test")) deletecookie("Test") alert(getcookie("Test")) </script> |
Vampir3,
Я вставил вызываю <a href="" onclick="del_cookie(name)">Поменять ник</a> и <a href="" onclick="del_cookie()">Поменять ник</a> но не работает.. |
Цитата:
Цитата:
|
Цитата:
|
Цитата:
<a href="" onclick="del_cookie('name')">Поменять ник</a> и <a href="" onclick="del_cookie('')">Поменять ник</a> и ничего не меняется |
Цитата:
А про кавычки ты подругому запоешь, когда разберешься с функцией и уберешь кавычки вновь. |
Часовой пояс GMT +3, время: 13:09. |