整合營銷服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢熱線:

          打開網(wǎng)站就彈出網(wǎng)站公告提示框的JS彈窗代碼

          是否有看到有的網(wǎng)站進(jìn)入網(wǎng)站就會彈出網(wǎng)站公告提示框,今天飛飛和你們分享打開網(wǎng)站就彈出網(wǎng)站公告提示框的JS彈窗代碼,希望可以幫到你~

          <script language="javascript">alert('我是飛飛,可以通過【服務(wù)器大本營】相識是一種緣分,希望通過我的分享可以讓你更多的了解服務(wù)器,當(dāng)然有服務(wù)器需求的朋友可以加微信:137 5120 9102~域名速記:【服務(wù)器大本營】首拼.com')</script>


          直接復(fù)制JS代碼,粘貼到首頁文件,或者需要彈出的頁面即可

          avascript并不是只是存活在瀏覽器里面。


          Google公司的chrome瀏覽器非常著名,出于公司發(fā)展戰(zhàn)略的考慮,為了把持互聯(lián)網(wǎng)入口,google把這個瀏覽器做的非常出色。

          而且Google也做到了,一個成果就是google命名為V8的JavaScript解釋引擎。


          在早期,chrome團(tuán)隊每次在更新里面都提到“JavaScript速度提高XX倍”,這個XX通常是以百位來計數(shù)的。

          人們一看,我擦,這么強(qiáng)的東西,只用在瀏覽器里面太可惜了,而且Chrome一直是個開源產(chǎn)品,為什么不把V8那一部分拿出來,單獨(dú)做一個東西呢?


          于是Node.js就誕生了。


          從此以后,人們就可以在任何地方使用JavaScript了。


          你可以去node.js官網(wǎng)(https://nodejs.org/en/)去下載。

          Node.js的版本發(fā)展速度非常快,經(jīng)常一個星期就發(fā)布一個新的版本,被人戲稱為“版本帝”。

          后來node.js發(fā)表了LTS版本,就是“長時間支持版本”,就是版本號不變,但是那些改進(jìn)特性會融入到這個版本里面。

          如果你喜歡嘗試新特性,可以使用Current版本。


          在node.js里面都可以下載。


          node.js并不只是把V8引擎給利用了起來,還帶來了NPM這個改變世界的東東。

          npm你可以想象成一個代碼倉庫,人們可以把自己的代碼以模塊的形式發(fā)布到npm倉庫上面,任何其他人就可以使用這些模塊了。

          npm是世界上最大的代碼倉庫之一,幾乎可以找到任何方面的Javascript代碼模塊。

          這也是現(xiàn)在Javasript征服世界的一個原因之一。


          當(dāng)然另外一個方面,node.js也有不是非常擅長的領(lǐng)域,譬如長時間的運(yùn)算(如加密等)。


          同時,Javascript的設(shè)計方面也有一些問題,它的異步執(zhí)行方式對于傳統(tǒng)的C系列編程人員(C系就是C、c++、Java等c語法類型),思維方式需要一些改變才能習(xí)慣異步代碼。
          好吧,今天就到這里。


          自己下載安裝一個node.js來試一試吧!

          近在做項目的時候碰到了使用window.open被瀏覽器攔截的情況, 在本機(jī)實(shí)驗(yàn)沒問題, 到了服務(wù)器就被攔截了, 火狐有攔截提示, 360瀏覽器攔截提示都沒有, 雖然在自己的環(huán)境可以對頁面進(jìn)行放行,

          另外, 可以發(fā)現(xiàn), 當(dāng)window.open為用戶觸發(fā)事件內(nèi)部或者加載時, 不會被攔截, 一旦將彈出代碼移動到ajax或者一段異步代碼內(nèi)部, 馬上就出現(xiàn)被攔截的情況了。

          使用了一個可定制彈出窗口的外觀、尺寸大小、彈出位置以適應(yīng)該頁面的window.open()方法, 代碼如下:

          <!--
          window.open ('page.html','newwindow','height=100,width=400,top=0,left=0,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no')
          //寫成一行
          -->

          參數(shù)解釋:

          window.open 彈出新窗口的命令;

          page.html 彈出新窗口的文件名;

          newwindow 彈出窗口的名字(不是文件名), 可用空''代替;

          height=100 窗口高度;

          top=0 窗口距離屏幕上方的像素值;

          left=0 窗口距離屏幕左側(cè)的像素值;

          toolbar=no 是否顯示工具欄,yes為顯示;

          menubar,scrollbars 表示菜單欄和滾動欄;

          resizable=no 是否允許改變窗口大小,yes為允許;

          location=no 是否顯示地址欄,yes為允許;

          status=no 是否顯示狀態(tài)欄內(nèi)的信息(通常是文件已經(jīng)打開),yes為允許;

          原因分析

          當(dāng)瀏覽器檢測到非用戶操作產(chǎn)生的新彈出窗口, 則會對其進(jìn)行阻止。因?yàn)闉g覽器認(rèn)為這可能是一個廣告, 不是一個用戶希望看到的頁面。


          解決方案:

          1、使用a標(biāo)簽替代

          給出如下函數(shù), 將此函數(shù)綁定到click的事件回調(diào)中, 就可以避免大部分瀏覽器對窗口彈出的攔截:

          function newWin(url, id) {
              var a = document.createElement('a');
              a.setAttribute('href', url);
              a.setAttribute('target', '_blank'); // 這里可以改為top, 防止彈出多個窗口
              a.setAttribute('id', id);
              // 防止反復(fù)添加
              if(!document.getElementById(id)) {
                  document.body.appendChild(a);
              }
              a.click();
          }

          2、使用form的submit方法打開一個頁面

          這種方法需要構(gòu)造一個from, 然后由js代碼觸發(fā)form的submit, 將表單提交到一個新的頁面, 如:

          $("#ID").attr('target', '_blank');
          $("#ID").submit();

          大家注意, 以上兩種方法不適合放在ajax的回調(diào)函數(shù)中, 如果放在回調(diào)函數(shù)中, 依然會被瀏覽器攔截。


          3、終極解決方案–先彈出窗口, 然后重定向

          第三種方案, 其實(shí)是一種變通方案, 核心思想是: 先通過用戶點(diǎn)擊打開頁面, 然后再對頁面進(jìn)行重定向。示例代碼如下:

          xx.addEventListener('click', function () {
              // 打開頁面,此處最好使用提示頁面
              var newTab=window.open('about:blank');
              ajax().done(function() {
              // 重定向到目標(biāo)頁面
             newWin.location.href = 'target url';
          });
          });

          以上方法其實(shí)是打開了兩個地址, 所以建議大家打開第一個地址的時候給出一個類似'當(dāng)前頁面正在加載中,請稍后。。'的簡單提示頁, 這樣可以避免打開兩次真正的目標(biāo)頁面, 讓用戶察覺到頁面的重定向。

          補(bǔ)充:

          JS打開新窗口的2種方式

          1.超鏈接

          <ahref="http://www.xxxxxx.com" title="標(biāo)題">Hello world</a>

          等效于js代碼

          window.location.href="http://www.xxxxxx.com"; //在同當(dāng)前窗口中打開窗口


          2.超鏈接

          <a href="http://www.xxxxxx.com" title="標(biāo)題" target="_blank">Hello world</a>

          等效于js代碼

          window.open("www.xxxxxx.com"); //在另外新建窗口中打開窗口

          3、關(guān)閉新窗口:


          主站蜘蛛池模板: 亚洲欧美一区二区三区日产| 亚洲乱码一区二区三区国产精品| 久久国产精品无码一区二区三区| 蜜芽亚洲av无码一区二区三区| 日本成人一区二区| 一区二区精品视频| 加勒比精品久久一区二区三区| 中文字幕AV一区二区三区人妻少妇| 久久久久久免费一区二区三区| 久久一区二区三区99| 日本一区二区三区在线观看视频| 一本大道在线无码一区| 国产美女一区二区三区| 精品福利视频一区二区三区 | 亚洲一区在线视频观看| 99久久精品国产高清一区二区| 一区二区三区亚洲视频| 一区五十路在线中出| 一区二区3区免费视频| 亚洲中文字幕丝袜制服一区| 动漫精品专区一区二区三区不卡 | 好吊视频一区二区三区| 国产91精品一区二区麻豆亚洲| 制服美女视频一区| 国产免费伦精品一区二区三区| 精品国产亚洲一区二区在线观看 | 亚洲熟妇av一区二区三区下载| 人妻夜夜爽天天爽爽一区| 日本激情一区二区三区| 无码国产精品一区二区免费I6| 日韩免费一区二区三区| 波霸影院一区二区| 国内精品无码一区二区三区| 国产区精品一区二区不卡中文| 久久精品动漫一区二区三区| 日韩精品区一区二区三VR| 毛片无码一区二区三区a片视频| 日韩精品电影一区| 奇米精品一区二区三区在| 亚洲一区二区三区高清视频| 少妇人妻精品一区二区|