Javascript 检测每个用户是否单击了所有按钮

Javascript 检测每个用户是否单击了所有按钮,javascript,jquery,css,wordpress,visual-composer,Javascript,Jquery,Css,Wordpress,Visual Composer,我正在创建一个“完成任务以解锁”系统,但我对编码非常熟悉,无法使其工作。我花了好几个星期的时间试图寻找方法来做这件事,但直到我知道之前什么都没有。我只有最基本的知识 我会把我需要的全部分开,我真的非常感谢你们的帮助 哦,我正在使用Wordpress和VisualComposer来实现这个 好吧,我已经有了一个代码(或者差不多),但是没有像我所希望的那样正常工作 我需要的是,某个按钮(.Test)只在完成一些任务后出现 首先,任务将是“访问此链接以解锁”。所以我会给出一些按钮,每个按钮都会打开一

我正在创建一个“完成任务以解锁”系统,但我对编码非常熟悉,无法使其工作。我花了好几个星期的时间试图寻找方法来做这件事,但直到我知道之前什么都没有。我只有最基本的知识

我会把我需要的全部分开,我真的非常感谢你们的帮助

哦,我正在使用Wordpress和VisualComposer来实现这个


好吧,我已经有了一个代码(或者差不多),但是没有像我所希望的那样正常工作

我需要的是,某个按钮(.Test)只在完成一些任务后出现

首先,任务将是“访问此链接以解锁”。所以我会给出一些按钮,每个按钮都会打开一个不同的链接。单击时,该按钮将触发操作,解锁按钮以获取cd密钥/链接。但问题是,我需要用户点击所有按钮。在我正在使用的代码中,当用户只单击一个任务按钮时,就会出现.Test

以下是我正在使用的代码:

jQuery代码

我尝试使用&&运算符,但不起作用。我需要用户点击所有链接按钮来显示按钮生成器。不止一个

谢谢你的帮助


如果您需要更多信息,请询问我。

一种方法是计算这些特定按钮上的点击次数,例如,将按钮存储在一组中并获取组的大小:

jQuery(function(){
  var clicked=new Set;//a new unique set
  jQuery('.social').click(function() {     // some button clicked
       clicked.add(this);      //add this button to set
        if(clicked.size>=3) alert("wohoo, all buttons clicked");//actually: three different buttons with class social clicked
  });
});


<button class="social">Twitter</button>
<button class="social">Facebook</button>
<button class="social">GitHub</button>
jQuery(函数(){
var clicked=new Set;//一个新的唯一集
jQuery('.social')。单击(函数(){//单击了一些按钮
单击。添加(此);//添加此按钮以设置
if(clicked.size>=3)alert(“wohoo,所有按钮都已单击”);//实际上:三个不同的按钮已单击
});
});
啁啾
脸谱网
github

请注意,集合是非常新的,可能会用唯一的数组替换它


您可以为按钮分配唯一的ID,以便跟踪单击的ID,然后这些ID可以存储在数据库或用户设备上:

jQuery(function(){
  var clicked=new Set((localStorage.getItem("clicked")||"").split(","));//a new unique set may restored from storage
  jQuery('.social').click(function() {     // some button clicked
       clicked.add(this.id);      //add this buttons id to set
       localStorage.setItem("clicked",[...clicked].join(","))
        if(clicked.size>=3) alert("wohoo, all buttons clicked");//actually: three different buttons with class social clicked
  });
});


<button class="social" id="twitter">Twitter</button>
<button class="social" id="facebook">Facebook</button>
<button class="social" id="github">GitHub</button>
jQuery(函数(){
var clicked=new Set((localStorage.getItem(“clicked”)| |“”).split(“,”)//可以从存储中还原新的唯一集
jQuery('.social')。单击(函数(){//单击了一些按钮
单击.add(this.id);//将此按钮id添加到设置
localStorage.setItem(“已单击)”,[…已单击].join(“,”)
if(clicked.size>=3)alert(“wohoo,所有按钮都已单击”);//实际上:三个不同的按钮已单击
});
});
啁啾
脸谱网
github

一种方法是计算这些特定按钮上的点击次数,例如通过将按钮存储在一个集合中并获取集合大小:

jQuery(function(){
  var clicked=new Set;//a new unique set
  jQuery('.social').click(function() {     // some button clicked
       clicked.add(this);      //add this button to set
        if(clicked.size>=3) alert("wohoo, all buttons clicked");//actually: three different buttons with class social clicked
  });
});


<button class="social">Twitter</button>
<button class="social">Facebook</button>
<button class="social">GitHub</button>
jQuery(函数(){
var clicked=new Set;//一个新的唯一集
jQuery('.social')。单击(函数(){//单击了一些按钮
单击。添加(此);//添加此按钮以设置
if(clicked.size>=3)alert(“wohoo,所有按钮都已单击”);//实际上:三个不同的按钮已单击
});
});
啁啾
脸谱网
github

请注意,集合是非常新的,可能会用唯一的数组替换它


您可以为按钮分配唯一的ID,以便跟踪单击的ID,然后这些ID可以存储在数据库或用户设备上:

jQuery(function(){
  var clicked=new Set((localStorage.getItem("clicked")||"").split(","));//a new unique set may restored from storage
  jQuery('.social').click(function() {     // some button clicked
       clicked.add(this.id);      //add this buttons id to set
       localStorage.setItem("clicked",[...clicked].join(","))
        if(clicked.size>=3) alert("wohoo, all buttons clicked");//actually: three different buttons with class social clicked
  });
});


<button class="social" id="twitter">Twitter</button>
<button class="social" id="facebook">Facebook</button>
<button class="social" id="github">GitHub</button>
jQuery(函数(){
var clicked=new Set((localStorage.getItem(“clicked”)| |“”).split(“,”)//可以从存储中还原新的唯一集
jQuery('.social')。单击(函数(){//单击了一些按钮
单击.add(this.id);//将此按钮id添加到设置
localStorage.setItem(“已单击)”,[…已单击].join(“,”)
if(clicked.size>=3)alert(“wohoo,所有按钮都已单击”);//实际上:三个不同的按钮已单击
});
});
啁啾
脸谱网
github

@Jonasw谢谢你,伙计。使用下面没有id的代码可以正常工作。现在我必须点击所有的按钮(我已经为“社交”设置了所有的类)来显示隐藏的内容。但我无法将其用于第二个代码的数据存储


jQuery(文档).ready(函数(){
var=newset;
jQuery('.social')。单击(函数(){
单击。添加(此);
如果(单击.size>=2)jQuery('.Test').show();
});
});

@Jonasw谢谢你,伙计。使用下面没有id的代码可以正常工作。现在我必须点击所有的按钮(我已经为“社交”设置了所有的类)来显示隐藏的内容。但我无法将其用于第二个代码的数据存储


jQuery(文档).ready(函数(){
var=newset;
jQuery('.social')。单击(函数(){
单击。添加(此);
如果(单击.size>=2)jQuery('.Test').show();
});
});

您可以将单击操作标志存储到某个元素的数据属性中,并在执行下一个任务之前检查该元素。您的计划非常详细,但是您试图获得的解决方案非常少。我缺少以下信息:您当前的代码做什么?你想让它做什么?你在哪里使用了&&运算符?@Jeroen我怎么做?你能了解我吗?@Jonasw实际上它会打开一个页面并显示隐藏的内容,但我需要点击所有按钮,而不仅仅是两个按钮中的一个。我使用了一个&&运算符来合并这两个代码,比如jQuery('.like'&&&'.Follow')。单击(function()@KaioLoureiro好的,那么你想在所有按钮都被点击的情况下显示它吗?你可以将点击操作标志存储到某个元素的数据属性中,并在执行下一个任务之前检查该元素。你的计划非常详细,但是你试图获得解决方案的内容非常少。我缺少这些信息:你的计划是什么当前代码做什么?你想让它做什么?你在哪里使用了&&运算符?@Jeroen我怎么做?你能了解我吗?@Jonasw实际上它打开一个页面并显示隐藏的内容,但我需要单击所有按钮,而不仅仅是一个按钮