- ベストアンサー
ページ内リンクでアンカーをつけずに移動する方法
- ページ内リンクでアンカーをつけずに移動する方法を教えてください。
- scrollsmoothly.jsを使用してページを作成していますが、アドレスバーに#を表示せずに移動する方法を知りたいです。
- KAZUMIX氏のscrollsmoothly.jsを使用してページ内リンクを作成していますが、アドレスバーに#を表示せずに移動する方法が知りたいです。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
scrollsmoothly.jsのソースコードの function scroll(){}内にある location.hash = targetHash; を↓のようにコメントアウトするだけです。 function scroll(){ var currentX = d.documentElement.scrollLeft||d.body.scrollLeft; var currentY = d.documentElement.scrollTop||d.body.scrollTop; var vx = (targetX - currentX) * easing; var vy = (targetY - currentY) * easing; var nextX = currentX + vx; var nextY = currentY + vy; if((Math.abs(vx) < 1 && Math.abs(vy) < 1) || (prevX === currentX && prevY === currentY)){ // 目標座標付近に到達していたら終了 scrollTo(targetX, targetY); scrolling = false; //location.hash = targetHash; prevX = prevY = null; return; }else{ // 繰り返し scrollTo(parseInt(nextX), parseInt(nextY)); prevX = currentX; prevY = currentY; setTimeout(function(){scroll()},interval); } }
お礼
回答ありがとうございます!! さっそく試してみましたところ、無事できました!