javascript - 监听 Cookie,设置后刷新页面 - Javascript

标签 javascript jquery cookies listener

我正在使用设置 cookie 的弹出插件。

我已经将内容限制为那些在 single.php 中有 cookie 的内容,如下所示:

<?php if(isset($_COOKIE['pum-88881'])){
the_content();
}
else {
    echo apply_filters( 'the_content', wp_trim_words( strip_tags( $post->post_content ), 55 ) )  . '<p>The full article is only available to subscribers to our newsletter.<a class="opensub">Subscribe to our Newsletter to Continue Reading</a></p>';
}
?>  

此代码有效。当有值为pum-88881的cookie时,显示完整内容。唯一的问题是,它需要刷新。

因此,为了尝试解决这个问题,我一直在尝试用 Javascript 编写一个监听器:

function getCookie(c_name) {
var c_value = document.cookie,
    c_start = c_value.indexOf(" " + c_name + "=");
if (c_start == -1) c_start = c_value.indexOf(c_name + "=");
if (c_start == -1) {
    c_value = null;
} else {
    c_start = c_value.indexOf("=", c_start) + 1;
    var c_end = c_value.indexOf(";", c_start);
    if (c_end == -1) {
        c_end = c_value.length;
    }
    c_value = unescape(c_value.substring(c_start, c_end));
}
return c_value;
}
setTimeout(function(){
var username = getCookie("pum-88881");
if (username != "") {     

    }
    else{
location.reload()
    }
}, 1000);

它不起作用。控制台中没有消息。

你说呢?

最佳答案

由于这与 Popup Maker 有关,我将在此处发布。假设您将 cookie 设置为关闭,您将使用类似这样的东西。

jQuery('#pum-88881').on('pumAfterClose', function () {
    window.location.reload(true);
});

关于javascript - 监听 Cookie,设置后刷新页面 - Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50737367/

相关文章:

javascript - 引用 DOM 元素的 React Hook 在第一次调用时返回 "null"

javascript - 如何用Jquery制作动态过渡效果?

javascript - 水平和垂直对齐标签和文本框

javascript - 如何使用 PhantomJS 在外部域上设置 cookie

javascript - 在 IE11 中未清除 cookie(通过 Javascript 写入 document.cookie 来设置 cookie)

php - Ajax 响应中的奇怪字符

javascript - angularjs ng-repeat的猫头鹰旋转木马问题

ruby-on-rails - 如何使用 Ruby 获取网站 (url) cookie 列表

javascript - 主干集合不是唯一的吗?

javascript datepicker 检测输入字段中更改的值