禁用特定页面上的特定模态

时间:2018-02-17 07:28:26

标签: javascript php jquery

我有一个名为modal.php的文件包含两个模态

  1. 登录模式
  2. 反馈模式
  3. 如果用户未登录,则每5秒运行一次登录模式运行。点击后会打开反馈模式。

    在我的网站上我有20页,在所有页面中我都包含modal.php所以我得到的问题是在这20页中我有一个以signin.php命名的页面。我还在这里添加modal.php

    所以这里是登录的代码所以我不想在这里显示登录模式。 那我怎么能这样做呢?

    modal.php中的模态打开代码是

    $(window).on("load", function () {
        <?php if(!isset($_COOKIE['loginuser'])){ ?>
        setTimeout(function() {
            $('#signup_mask_popup').modal("show");
        }, 5000);
    

    我试过

    <?php if(basename(__FILE__) != 'free-listing-new.php') { ?>
        setTimeout(function() {
            $('#signup_mask_popup').modal("show");
        }, 5000);
    <?php } ?>
    

    但是这将显示不工作和模态。我认为它可能是因为包含文件。那我该怎么做

1 个答案:

答案 0 :(得分:0)

我认为你的麻烦在别的地方。你的代码有效。这是我如何测试相同的。我只在modal.php中包含了模态。

        <script>

        $(window).on("load", function () {

        <?php if(!isset($_COOKIE['loginuser'])){ ?>

            console.log($('#signup_mask_popup'));
            setTimeout(function() {
                $('#signup_mask_popup').modal("show");
            }, 5000);

           <?php  
            $cookie_name = "loginuser";
            $cookie_value = "John Doe";
            setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/"); // 86400 = 1 day 
           ?>

        <?php }else { ?>
            console.log("cookie is set.");
        <?php } ?>


        <?php if(basename(__FILE__) != 'free-listing-new.php') { ?>
            console.log("here");
            setTimeout(function() {
                $('#signup_mask_popup').modal("show");
            }, 5000);
        <?php } ?>                


        });

    </script>