在移动设备上打开网站时弹出(php-javascript)弹出窗口

时间:2016-07-11 05:23:52

标签: javascript php

如何让弹出广告仅适用于移动ios浏览器一次。

我正在使用(每次弹出节目:我怎样才能让它第一次显示)

<script type="text/javascript">
if( /iPad|iPhone/i.test(navigator.userAgent) ) {
var url=confirm("Would you like to download our mobile application?");
if (url==true)
{
var url = window.location.href = 'http://itunes.apple.com/us/app/AppId';
url.show(); 
   }
else
{
    }
}
</script>

2 个答案:

答案 0 :(得分:0)

您可以从外部加载js

<script src="ad.php"></script>

让php检查用户是否已经看到它:

AD.PHP:

<?php
session_start();
if(!isset($_SESSION["ad"])){
$_SESSION["ad"]="displayed";
?>
//your javascript goes here
<?php } ?>

答案 1 :(得分:0)

您应该使用cookie来存储弹出窗口已显示的值,然后在弹出窗口中添加check,如果cookie存在则不显示弹出窗口。我更新了你的代码,以反映你需要做出的改变,goodluck:)

  <script type="text/javascript">
    if( /iPad|iPhone/i.test(navigator.userAgent) ) {

        //cookie name mypopup not found so display the popup
       if(!getCookie("mypopup")){
            setCookie("mypopup",true); //sets the cookie mypopup
            var url=confirm("Would you like to download our mobile application?");
            if (url==true)
            {
                var url = window.location.href = 'http://itunes.apple.com/us/app/AppId';
                url.show(); 
            }else{


            }
       }

    }

//function to retrieve cookie value
function getCookie(cname) {
    var name = cname + "=";
    var ca = document.cookie.split(';');
    for(var i = 0; i <ca.length; i++) {
        var c = ca[i];
        while (c.charAt(0)==' ') {
            c = c.substring(1);
        }
        if (c.indexOf(name) == 0) {
            return c.substring(name.length,c.length);
        }
    }
    return "";
}

//function to set the cookie
function setCookie(cname, cvalue) {
    document.cookie = cname + "=" + cvalue + "; ";
}
    </script>