Program Tip

창의 URL 해시를 다른 응답으로 바꾸려면 어떻게해야합니까?

programtip 2021. 1. 10. 19:28
반응형

창의 URL 해시를 다른 응답으로 바꾸려면 어떻게해야합니까?


replace 메서드를 사용하여 해시 된 URL (document.location.hash)을 변경하려고하는데 작동하지 않습니다.

$(function(){
 var anchor = document.location.hash;
 //this returns me a string value like '#categories'

  $('span').click(function(){

     $(window).attr('url').replace(anchor,'#food');
     //try to change current url.hash '#categories'
     //with another string, I stucked here.
  });

});

페이지를 변경 / 새로 고침하고 싶지 않습니다. 응답없이 URL 만 바꾸고 싶습니다.

참고 : href = "# food"솔루션으로이 문제를 해결하고 싶지 않습니다.


사용 location또는 window.location대신 document.location후자는 비표준입니다.

window.location.hash = '#food';

그러면 URL의 해시가 설정 한 값으로 바뀝니다.

참고


이 질문에 대한 답변을 선호 할 수 있습니다 .

차이점은 history.replaceState()앵커로 스크롤하지 않고 내비게이션 바에서만 교체한다는 것입니다. 모든 주요 브라우저, source .

history.replaceState(undefined, undefined, "#hash_value")

참조 URL : https://stackoverflow.com/questions/11588482/how-can-i-replace-a-windows-url-hash-with-another-response

반응형