0

説明させてください: 私はサイトを持っていますindex.html 。サイトは、ページの一番下にある特定のアンカーから開始する必要があります。私はこのコードを使用してこれを行いました:

setTimeout("window.location.href='index.html#start'",0);

問題は、リンクを他の人と共有したいということです。たとえばindex.html/#work 、この場合、サイトは#startアンカーに移動すべきではありません。しかし、そうです。

だからここに私の質問があります: 要求されたサイトがそうである場合にのみサイトがスクロールし#start、要求index.htmlされたサイトにアンカーがある場合は常にそのままである可​​能性はありますか? (例index.html/#anchor)

どうもありがとうございました!

4

1 に答える 1

3

もちろん:

if (window.location.hash === "") {
    window.location.hash = "start"
}

ファイルの名前を変更したり、コードを別のファイルに移動したりしても機能するように、setTimeoutハッシュの変更を でラップする必要はありません。hrefhash

window.onloadまた、ジャンプしようとしている要素が実際に存在するように、コードを でラップすることを忘れないでください。(使用window.onload = function() { /* code here */ })

于 2013-10-14T21:17:30.923 に答える