|
javascript не удалят куки из Мозила
При загрузке сайта выезжает div с рекламой, при закрытии блока javascript удаляет куки. Блок
будет всплывать один раз при открытии страницы, затем для его появления потребуется перезапуск браузера. Корректно работает в Opera, Google Chrome, IE. В Мозила тоже все срабатывает, но если в настройках этого браузера (Инструметы/Настройки/Основные) применить: "При запуске Firefox: Показать окна и вкладки, открытые в прошлый раз", то в открытой вкладке с рекламным блоком не удаляются куки и соответственно этот блок не показывается. Пожалуйста, помогите решить проблему. Убедительная просьба, "не тыкать меня носом" в учебники HTML, Javascript и тд. - просто помогите. javascript var ie=document.all var dom=document.getElementById var ns4=document.layers var calunits=document.layers? "" : "px" var bouncelimit=32 //(must be divisible by 8) var direction="up" function initbox(){ if (!dom&&!ie&&!ns4) return crossobj=(dom)?document.getElementById("dropin").style : ie? document.all.dropin : document.dropin scroll_top=(ie)? truebody().scrollTop : window.pageYOffset crossobj.top=scroll_top-250+calunits crossobj.visibility=(dom||ie)? "visible" : "show" dropstart=setInterval("dropin()",25) } function dropin(){ scroll_top=(ie)? truebody().scrollTop : window.pageYOffset if (parseInt(crossobj.top)<100+scroll_top) crossobj.top=parseInt(crossobj.top)+40+calunits else{ clearInterval(dropstart) bouncestart=setInterval("bouncein()",50) } } function bouncein(){ crossobj.top=parseInt(crossobj.top)-bouncelimit+calunits if (bouncelimit<0) bouncelimit+=8 bouncelimit=bouncelimit*-1 if (bouncelimit==0){ clearInterval(bouncestart) } } function dismissbox(){ if (window.bouncestart) clearInterval(bouncestart) crossobj.visibility="hidden" } function truebody(){ return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body } function get_cookie(Name) { var search = Name + "=" var returnvalue = "" if (document.cookie.length > 0) { offset = document.cookie.indexOf(search) if (offset != -1) { offset += search.length end = document.cookie.indexOf(";", offset) if (end == -1) end = document.cookie.length; returnvalue=unescape(document.cookie.substring(offset, end)) } } return returnvalue; } function dropornot(){ if (get_cookie("droppedin")==""){ window.onload=initbox document.cookie="droppedin=yes" } } dropornot() DIV <div id="dropin" style="position:fixed;visibility:hidden;left:40%;top:500px;width:430px;height:430px;background-co lor:#EBEBEB"> <div align="right"><a href="action.php" onClick="dismissbox();return false"> <img src="banner/img/close.png" border=0 vspace=0 hspace=0 align="right" width="15" height="15" alt="закрыть"/> </a></div> <p><center><font style="font-size:19px; color:#FF0000;">Здесь текст</font><br><br><a href="action.php"><img src="banner/img/glass_banner.png" border="0"></a><br><br> <a href="action.php"><b>Подробнее>>></b></a> </center></p> </div> Здесь тестируемая страница: http://glass-pgc.ru/1.php |
|
Для Firefox можно сделать так: повесить обработчик на событие window.onunload и в нём удалить куку.
|
Нужно чтобы cookie удалялись сразу после закрытия div или перезагрузки/переходе страницы. Дата истечения, когда удалить cookies не подходит.
|
sashgera,
я дал Вам ссылку на рабочую функцию куков с пояснениями |
oneguy,
window.onunload кажется, срабатывает при переходе на другую страницу, мне это не подходит. Нужно чтобы cookie удалялась сразу после закрытия div. Так все-таки, может кто ответит - почему в моем случае Мозила не удаляет куки? |
Deff,
Перешел по Вашей ссылки и все внимательно прочитал. Я новичок, слабо разбираюсь в javascript. Я выложил Java-скрипт, может быть, Вы укажете, где именно ошибка? Во всех браузерах срабатывает, кроме Мозилы. |
Цитата:
|
Просто ставить кук на время (*тогда траблов не возникает,
Хотя можно ставить два кука на текущую сессию и на длинное время - тестируем наличия кука по одновременному наличию кука сессии и наличию кука по времени а стираем лишь кук по длинному времени |
sashgera, я вас не совсем понял. Вы пишете:
Цитата:
Цитата:
|
Часовой пояс GMT +3, время: 15:48. |
|