JSFiddle - React, Tailwind, and code Playground
by Sergio Crisostomo
HTML
<a href="/Sergio_fiddle/vexcuhu2/">Este link existe</a>
<a href="/blablabla/">Este link não existe</a>
JavaScript
function verificar(url, cb) {
var request = new XMLHttpRequest();
request.open('GET', url, true);
request.onload = function() {
if (request.status >= 200 && request.status < 400) cb(true);
else cb(false);
};
request.onerror = function() {
cb(false);
};
request.send();
}
var links = document.querySelectorAll('a');
for (var i = 0; i < links.length; i++) {
links[i].addEventListener('click', verificador(links[i]))
}
function verificador(el) {
return function(e) {
e.preventDefault();
var url = e.target.href;
var status = verificar(url, function(sucesso){
alert('Essa página ' + (sucesso ? 'existe!' : 'não existe :('));
});
}
}