ich eine Funktion haben, die ich will von jQuery entfernen:wie entfernen jquery Filter aus Funktion
var hunt = new RegExp(action.search);
$('a').filter(function() {
return hunt.test(this.href);
}).click(doStuff);
Ich versuche, diese Funktion mit Vanille zu umschreiben Javascript. das ist, was ich bisher aber es funktioniert nicht
var hunt = new RegExp(action.search);
var aSelector = document.getElementsByTagName('a');
var arr = Array.prototype.filter.call(aSelector, function(el){
return hunt.test(el.href)
});
for(var i=0; i<arr.length; i++){
var elem = arr[i].getAttribute('href');
elem.onclick = function(){
doStuff();
};
}
Ich vermute, dass das jQuery-Selektor Verhalten als document.getElementsByTagName ist etwas anders, aber ich habe wirklich keine Ahnung, was los ist. Jede Hilfe würde sehr geschätzt werden. Danke
var elem = arr [i] .getAttribute ('href'); Ruft den Attributwert 'href' für jedes Element ab. Sie versuchen dann, dem zurückgegebenen Wert einen Click-Handler zuzuweisen. – bwyn
Regel # 1: Einfach etwas zu sagen "funktioniert nicht" ist keine gute Möglichkeit, eine Frage zu stellen. Gibt es einen Fehler? Was ist das erwartete vs. tatsächliche Verhalten? – david