0

我的网页上需要一个按钮,用户必须先单击该按钮才能看到内容,并且该按钮必须与内容位于同一页面中:像这样:http: //imgonion.com/img-516851517c10d.html (成人广告就可以了!!)。该按钮将用于检查用户是人类还是机器人

4

1 回答 1

2

我可能会这样做类似于反向蜜罐验证码- 将鼠标悬停在按钮上应该确认,用户是人类。代码可能如下所示:

html:

<button id="showContext">Show content</button>
<div id="content"></div>

javascript/jquery:

$(document).ready(function(){
    var isHuman = false;
    $('#showContext').attr('tabIndex',-1).mouseenter(function(){
        isHuman = true;
    }).mouseleave(function(){
        isHuman = false;
    }).click(function(){
        if (isHuman) {
            $('#content').html('Hello human');
            $.ajax("example.php?isHuman="+(isHuman?'yes':'no'))
            .done(function(data) { $('#content').html(data); })
            .fail(function() { alert("connection error"); });
        } else {
            //alert('das booooot detected');
        }
    });
});

http://jsfiddle.net/NECtq/2/

我不确定这个解决方案是否 100% 有效。有些机器人可以执行 javascript,所以最安全的方法是使用验证码。
此处的相关讨论:程序化机器人检测

于 2013-05-18T21:08:34.297 回答