I'm trying to create a function that traverses any text by selecting letter by letter as the effect of you move the mouse by selecting a text slowly.
I used select()
but it selects all the text.
Example:
function SelectText(element) {
var doc = document;
var text = doc.getElementById(element);
if (doc.body.createTextRange) {
var range = doc.body.createTextRange();
range.moveToElementText(text);
range.select();
} else if (window.getSelection) {
var selection = window.getSelection();
var range = doc.createRange();
range.selectNodeContents(text);
selection.removeAllRanges();
selection.addRange(range);
}
}
$('p').click(function() {
SelectText("selectme");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script><pid="selectme">Silvio Santos Ipsum É fácil ou não éam? Mah é a porta da esperançaam. Ma vai pra lá. É por sua conta e riscoamm? Patríciaaammmm... Luiz Ricardouaaammmmmm. O arriscam tuduam, valendo um milhão de reaisuam. Ma! Ao adquirir o carnê do Baú, você estará concorrendo
a um prêmio de cem mil reaisam. Eu não queria perguntar isso publicamente, ma vou perguntar. Carla, você tem o ensino fundamentauam? Ma quem quer dinheiroam? Estamos em ritmo de festamm. Eu só acreditoammmm.... Vendoammmm. Ma vejam só, vejam só. É com
você Lombardiam.</p>
I believe that the effect of selecting text can not be triggered automatically (just by calling a function without triggering an event). I needed a click event to get it triggered.
How can I do this?