jQuery: this.attr () não é uma função?
Não tenho certeza se não estou usando isso no escopo correto ou o quê, mas tenho um script que basicamente captura um clique no link e faz com que a página desapareça antes de ir para a página vinculada. No entanto, se o link for um JavaScript onclick, o script falha.
Aqui está o meu código:
<script type="text/javascript">
pageObj = {
init: function(){
$("body").fadeTo("slow", 1);
},
redirectPage: function(redirect){
window.location = redirect;
},
linkLoad: function(location){
$("body").fadeOut(1000, this.redirectPage(location));
}
};
$(document).ready(function() {
pageObj.init();
$("a").click(function(e){
e.preventDefault();
if (this.attr('onclick') !== undefined) {
eval(this.attr('onclick').val());
} else {
var location = this.href;
pageObj.linkLoad(location);
}
});
});
</script>
Como você pode ver, estou tentando verificar se o link tem o onclick e, em seguida, chame o onclick função, se existir. Como posso conseguir isso?