JS使用cookie實(shí)現(xiàn)只出現(xiàn)一次的廣告代碼效果
我們上網(wǎng)經(jīng)常會遇到第一次需要登錄而之后不用再登錄的網(wǎng)站的情況,其實(shí)是運(yùn)用了Cookie 存儲 web 頁面的用戶信息,Cookie 以名/值對形式存儲,當(dāng)瀏覽器從服務(wù)器上請求 web 頁面時(shí), 屬于該頁面的 cookie 會被添加到該請求中。服務(wù)端通過這種方式來獲取用戶的信息l。
今天的這個(gè)效果:第一次打開網(wǎng)頁彈出一個(gè)廣告框(js實(shí)現(xiàn)卷簾效果),關(guān)閉廣告或刷新頁面之后就不會再出現(xiàn)。由于往電腦里寫cookie信息是服務(wù)器行為,只有訪問網(wǎng)站,服務(wù)器才會向電腦里寫cookie信息,由于現(xiàn)在只是普通網(wǎng)頁,所以無法往電腦里寫cookie信息的。在眾多瀏覽器中火狐瀏覽器是支持這種本地操作,因此我們用火狐測試。
先寫廣告代碼:
<style> *{padding: 0;margin: 0;} #adv{ width: 300px; height: 300px; position: relative; overflow: hidden; } #adv span{ position: absolute; top:15px; right:15px; text-decoration: underline; color: #fff; cursor: pointer; }; </style>
<div id="adv"> <span id="close">關(guān)閉</span> <img src="1.png" alt="" /> </div>
js代碼:
<script> var adv=document.getElementById('adv'); var close=document.getElementById('close'); /*廣告彈出時(shí)的卷簾效果方法*/ function ani(obj){ var allWidth=document.documentElement.clientWidth; //獲取網(wǎng)頁可視區(qū)域?qū)? var allHeight=document.documentElement.clientHeight;//獲取網(wǎng)頁可視區(qū)域高 adv.style.left= (allWidth-adv.offsetWidth)/2+'px'; //使廣告居中在頁面 adv.style.top= (allHeight-adv.offsetHeight)/2+'px'; var num=0; var objH=adv.offsetHeight; var timer; timer=setInterval(function(){ //定時(shí)器,沒50毫秒增加10px的高度 if(num<parseInt(objH)){ num+=10; obj.style.height=num+'px'; } else{ clearInterval(timer); } },50); } /*點(diǎn)擊關(guān)閉廣告*/ close.onclick=function(){ adv.style.display="none"; } /*設(shè)置cookie,cookie是以字符串形式存儲的,可以有很多參數(shù),但必要的一個(gè)是cookie 的名稱name*/ function setcookie(){ var d=new Date(); d.setTime(d.getTime()+24*60*60*1000); //設(shè)置過去時(shí)間為當(dāng)前時(shí)間增加一天 document.cookie="name=world;expires="+d.toGMTString(); //expires是cookie的一個(gè)可選參數(shù),設(shè)置cookie的過期時(shí)間 var res=document.cookie; return res; //返回cookie字符串 } /*判斷網(wǎng)頁是否是第一次瀏覽,如果第一次則彈出廣告,然后設(shè)置cookie值,否則把廣告隱藏*/ if(document.cookie==""){ ani(adv); setcookie(); }else{ adv.style.display='none'; } </script>
廣告效果圖如下(第一次瀏覽網(wǎng)頁,刷新后就沒有了):
現(xiàn)在測試cookie,在火狐里關(guān)閉cookie,把你設(shè)置的cookie(沒有域名)name移除選中,如圖:
從上圖可以看到,cookie的過期時(shí)間設(shè)置為了明天,明天就會失效,如果不刪除cookie,等cookie失效后還是會彈出廣告。
以上所述是小編給大家介紹的JS使用cookie實(shí)現(xiàn)只出現(xiàn)一次的廣告代碼效果,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
- JS實(shí)現(xiàn)關(guān)閉小廣告特效
- js實(shí)現(xiàn)左右兩側(cè)浮動廣告
- javascript實(shí)現(xiàn)循環(huán)廣告條效果
- 基于JavaScript實(shí)現(xiàn)淘寶商品廣告效果
- 用js屏蔽被http劫持的浮動廣告實(shí)現(xiàn)方法
- JavaScript實(shí)現(xiàn)彈出廣告功能
- 原生js實(shí)現(xiàn)網(wǎng)頁頂部自動下拉/收縮廣告效果
- JavaScript實(shí)現(xiàn)廣告彈窗效果
- JavaScript cookie 跨域訪問之廣告推廣
- JS前端廣告攔截實(shí)現(xiàn)原理解析
相關(guān)文章
基于JavaScript實(shí)現(xiàn)淘寶商品廣告效果
這篇文章主要為大家詳細(xì)介紹了基于JavaScript實(shí)現(xiàn)淘寶商品廣告效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-08-08javascript中負(fù)數(shù)算術(shù)右移、邏輯右移的奧秘探索
javascript中負(fù)數(shù)的算術(shù)右移和邏輯右移都十分的讓人迷惑,特別是邏輯右移,接下來的文章中將為大家詳細(xì)介紹下為什么右移之后,一個(gè)很小的負(fù)數(shù)也會得到一個(gè)無比巨大的數(shù)2013-10-10小程序?qū)崿F(xiàn)訂單評價(jià)和商家評價(jià)
這篇文章主要為大家詳細(xì)介紹了小程序?qū)崿F(xiàn)訂單評價(jià)和商家評價(jià)功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04基于JavaScript實(shí)現(xiàn)簡單的隨機(jī)抽獎小程序
為了使抽獎程序能夠無需配置平臺直接可以在任何一臺機(jī)器上運(yùn)行,開發(fā)工具和編譯運(yùn)行工具也能夠盡可能簡單(諸如text文本即可編輯,window系統(tǒng)自帶的瀏覽器即可編譯運(yùn)行的情況),決定嘗試使用javascript來做2016-01-01bootstrap-datetimepicker實(shí)現(xiàn)只顯示到日期的方法
這篇文章主要介紹了bootstrap-datetimepicker實(shí)現(xiàn)只顯示到日期的方法,涉及bootstrap插件相關(guān)操作的設(shè)置與使用技巧,需要的朋友可以參考下2016-11-11js+html5操作sqlite數(shù)據(jù)庫的方法
這篇文章主要介紹了js+html5操作sqlite數(shù)據(jù)庫的方法,以完整實(shí)例形式分析了JavaScript封裝的html5操作SQLite數(shù)據(jù)庫類,并分析了具體使用技巧,需要的朋友可以參考下2016-02-02