Plug-in de verificação ortográfica do site
Demonstração online: https://textgears.com/assets/plugin/index.html
Esta documentação descreve a maneira de integrar uma mecânica simples de verificação de texto a qualquer página da web.
Requisitos da página do site
A versão atual do plugin pode anexar verificação de texto a qualquer elemento da página, exceto <textarea />
.
Portanto, se você usar <textarea />
, deverá substituí-lo por um
<div>
estilizado como elemento de entrada de texto.
Exemplo HTML:
<style>
/* Styling ot text editor block */
.textgears-editor {
display: inline-block;
white-space: break-spaces;
line-height: 1.3;
width: 100%;
max-width: 400px;
height: 300px;
box-sizing: border-box;
padding: 20px;
overflow-y: scroll;
border: 1px solid black;
}
</style>
<!-- Any styled element to be used as text editor -->
<div class="textgears-editor" placeholder="Enter your text here">Here is sample text to demostrate text checking possibilities.</div>
Anexando um plugin
Para anexar um plugin ao elemento <div>
mencionado acima, basta adicionar este código:
<!-- Init plugin, can be put on page body or inside a head block -->
<script type="text/javascript" src="https://textgears.com/assets/plugin/plugin.js"></script>
<link rel="stylesheet" href="https://textgears.com/assets/plugin/plugin.css"/>
<!-- Can be placed on page or can be run on init script or in any other place -->
<script type="text/javascript">
var textCheckingPlugin = new TextGearsPlugin({
// API endpoint
endpoint: "https://api.textgears.com",
// Place your key here
key: "DEMO_KEY",
// Text language
language: "en-US",
// Dictionary ids to be loaded on text checking. Can be empty to use default dictionary.
// In this example you can see two dictionaries:
// The first one is common for all of your users and can be edited with our API.
// The second one contains words for a single user only.
checkDictionaryIds: ["common", "user123"],
// Dictionary to be edited on "Add to dictionary".
// Set null to use default dictionary only or set any string value. For example, active user id.
// You do not need to explicitly create a new dictionary for each user if you need.
// Adding a word to a non-existing dictionary creates one automatically.
editDictionaryId: "user123",
// DOM elements to be handled
editors: document.getElementsByClassName("textgears-editor"),
// editors: [document.getElementById('textgears-editor')],
// Timeout between the pause of input and text checking request
timeout: 1500,
// Set custom cascading style classes for
theme: {
suggestionButtonClass: "suggestion-button",
suggestionRemoveButtonClass: "suggestion-button suggestion-remove",
addToDictionaryButtonClass: "suggestion-button add-to-dictionary-button",
},
// Start checking on init
checkOnLoadIfNotEmpty: true,
// Sample text changing event callback
onTextChange: function (event) {
document.getElementById("callback-test").innerHTML = event.text;
// Or set input value if you have a form like this:
// <form name="comment-form"><input type="hidden" name="comment"/></form></span>
document.forms["comment-form"]["comment"].value = event.text;
}
});
</script>
Para obter um valor do editor de texto, use o evento onTextChange
ou um código como este:
let value = document.getElementsByClassName("textgears-editor")[0].innerText || "";
Em outras versões do plugin será fornecido suporte para <textarea/>
.
Estilos personalizados
Como você pode ver acima, o plugin vem com seu próprio arquivo de folha de estilo em cascata. Sinta-se à vontade para copiá-lo e alterar os estilos de acordo com seus propósitos.