https://github.com/gormus/jquery.nospamquiz.js
A simple jQuery plugin to prevent spammers.
https://github.com/gormus/jquery.nospamquiz.js
jquery jquery-plugin quiz spam-protection
Last synced: 7 months ago
JSON representation
A simple jQuery plugin to prevent spammers.
- Host: GitHub
- URL: https://github.com/gormus/jquery.nospamquiz.js
- Owner: gormus
- License: gpl-3.0
- Created: 2018-03-20T20:29:33.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2018-03-27T18:35:42.000Z (over 7 years ago)
- Last Synced: 2025-03-17T08:22:22.215Z (7 months ago)
- Topics: jquery, jquery-plugin, quiz, spam-protection
- Language: JavaScript
- Size: 23.4 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# jQuery.noSpamQuiz.js
A simple jQuery plugin to prevent spammers.
## About
This jQuery plugin is based on a Wordpress plugin I stumbled upon, named [NRKbeta Know2Comment](https://github.com/nrkbeta/nrkbetaquiz). It tries to prevent visitors leave comments without actually reading the article first. The idea is very simple but I believe it could be quite powerful.
Before exposing the comment form at the end of the article, it renders a number of pre-defined questions specific to the article it's displayed on. If the visitor answers all the questions correctly, the quiz form would be replaced with the hidden form.
Any user interaction could be bundled with this plugin to ensure participants actually reads the content before they interact with the website.
## Usage
The plugin options can also be defined using the `data-nospamquiz` attribute.
``` html
`````` js
',
$('#comment-form-quiz').nospamquiz({
headlineMarkup: '
headline: 'Jeopardy',
intro: 'Please answer the following questions to enable the comment form for this post.',
onComplete: function() {
alert('Thank you for all the correct answers. Now you can use the comment form.');
}
});
```## Options
Option | Type | Default | Description
` | The quiz header is wrapped with this markup.
------ | ---- | ------- | -----------
headlineMarkup | string | `
headline | string | Quiz | The quiz header text.
introMarkup | string | `` | Introduction text wrapping markup.
intro | string | `Please answer the following questions to enable the form.` | Introduction text explaining what the quiz is about.
questions | object | `[]` | Required. JSON object containing the questions.
failureMarkup | string | `` | Failure message wrapping markup.
failure | string | `You must answer all questions correctly.` | Failure message text
prize | mixed (jQuery selector / jQuery object) | `this.$el.next()` | The DOM element to be shown upon successful completion. Default is the immediate element in the DOM tree.
onComplete | function | `null` | Callback function.