Ich versuche, zu einem div innerhalb einer Seite zu verknüpfen, und ich frage window.scrollTo(0, $(this.hash));
, um zu dem Ort zu gehen, wo das div befindet.Warum scrollt scrollY nicht für href zu meiner gewünschten Position?
Wenn ich es console.log, ist es korrekt, aber wenn ich es in window.scrollTo verwende geht es an den Anfang der Seite. Warum sollte es nicht an den richtigen Ort gehen?
$(document).ready(function() {
$('a').on('click', function(e){
e.preventDefault();
// console.log(this.hash);
console.log(e.currentTarget.href.indexOf('#'));
console.log($(this.hash));
console.log(window.pageYOffset);
console.log(window.location.hash);
if(e.currentTarget.href.indexOf('#') != -1){
// console.log(window.location);
window.scrollTo(0, $(this.hash)); //the scrollY should be the hash location
console.log($(this.hash));
}
return false;
});
});
Was sehen Sie in 'console.log ($ (this.hash));'? –
Die Methode 'window.scrollTo()' akzeptiert kein jq-Objekt als Parameter. Vielleicht verwirrend mit diesem Plugin https://github.com/flesler/jquery.scrollTo –
Da Sie jquery verwenden, warum verwenden Sie nicht jquery für scroll es auch? So einfach wie '$ ('html, body'). animate ({scrollTop: 100}, 200);' –