Javascript jquery:检查窗口是否已滚动一次,然后执行一些操作

Javascript jquery:检查窗口是否已滚动一次,然后执行一些操作,javascript,jquery,cookies,scroll,Javascript,Jquery,Cookies,Scroll,由于cookie法的新实施,我必须获得一些cookie的许可。其中一种方法是等待用户滚动页面一次,这在法律上是一种默示同意 我试过: jQuery(window).one('scroll', function(){ $(this).data('scrolled', true); }); if(jQuery(window).data('scrolled')) { console.log( 'ok' ); //place cookies } else { console

由于cookie法的新实施,我必须获得一些cookie的许可。其中一种方法是等待用户滚动页面一次,这在法律上是一种默示同意

我试过:

jQuery(window).one('scroll', function(){
  $(this).data('scrolled', true);
});

if(jQuery(window).data('scrolled')) {
    console.log( 'ok' );
    //place cookies
} else {
    console.log( 'no' );
}
在通过以下方式调用的脚本()中:

$(document).ready(function(){
                $.cookieBar({
                }); 
            });
但是,不管页面滚动,console.log总是告诉我“否”

有什么提示吗?
提前感谢

如果我这样更改代码,您的代码可以正常工作:

<script>
    jQuery(window).one('scroll', function()
    {
        $(this).data('scrolled', true);
        if(jQuery(window).data('scrolled'))
        {
            console.log('ok');
            //place cookies
        }
        else
        {
            console.log('no');
        }
    });
</script>

jQuery(窗口).one('scroll',function()
{
$(this).data('scrolled',true);
if(jQuery(window).data('scrolled'))
{
console.log('ok');
//放饼干
}
其他的
{
console.log('no');
}
});
然而,我不明白$.cookieBar在做什么

  • 检查滚动并做一些你想做的事情

    window.onscroll=函数(e){
    //在滚动窗口时调用。
    }

  • 如果您想调用它,每次用户滚动时都会调用它 只有一次,然后做一些小动作

  • 做一个隐藏的字段

  • 现在,当scroll方法调用时,将这个隐藏字段的值设置为true

    window.onscroll=函数(e) { if(document.getElementById(“ScrollOnCheck”).value==“false”) { document.getElementById(“ScrollOnCheck”).value=“true”; //更新cookie } }


  • cookieBar是一个通用脚本(我在第一篇文章中链接了它的源代码),它允许在用户同意之前暂停cookie。无论如何,谢谢,这解决了问题。:)也谢谢你的帮助。我很想知道它对你有帮助吗?我选择雷顿·达布雷的解决方案是因为它与矿山类似,但你的想法对我来说很好。如果你得到答案,那就好了。