리디렉션을 일으키지 않고 URL에 조각을 추가 하시겠습니까?


87

리디렉션없이 내 URL에 해시 #을 추가하는 방법이 있습니까?

답변:


171
window.location.hash = 'something';

이것은 단순한 JavaScript입니다.

귀하의 의견 ...

안녕하세요, 제가 정말로 필요한 것은 해시 만 추가하는 것입니다 ... 다음과 같은 것 : window.location.hash = '#';하지만 이런 식으로 아무것도 추가되지 않습니다.

이 시도...

window.location = '#';

또한 window.location.replace()방법을 잊지 마십시오 .


안녕하세요, 제가 정말로 필요한 것은 해시 만 추가하는 것입니다 ... 다음과 같이 : window.location.hash = '#'; 그러나이 방법으로 아무것도 추가되지 않습니다 ..

27

JavaScript가 필요없는 직선 HTML의 경우 :

<a href="#something">Add '#something' to URL</a>

또는 질문을 더 문자 그대로 받아들이려면 URL에 '#'을 추가하십시오.

<a href="#">Add '#' to URL</a>

올바르지 않습니다. 해시를 변경하려면 링크를 클릭해야하므로 "클릭"을 트리거하는 js 부분이 누락되었습니다 ..
Juan

@Juan 왜 클릭을 "트리거"해야합니까? 원래 질문 #은 URL에을 추가하는 방법을 물었습니다 . 실제로 내가 제안한 링크를 클릭하면이를 수행 할 수 있습니다. JS가 필요하지 않습니다.
Jess Telford

1
귀하의 답변은 클릭했을 때 URL에 조각을 추가하는 링크를 만드는 방법을 설명합니다. 질문은 조각을 추가하는 방법을 묻습니다. 따라서 귀하의 답변에는 액션, 즉 "클릭"이 누락되었습니다.
Juan

2
충분히 공평합니다. 질문이 그렇게 해석되는 것을 볼 수 있습니다. 누군가가 여전히이 옵션이 사용 사례에 유용하다는 것을 알기를 바랍니다.
Jess Telford 2015 년

6
window.location.hash = 'whatever';

5
#접두사가 필요하지 않습니다.
알렉스

@alex : 아, 그게 필요한지 아닌지 잘 모르겠습니다. window.location.hash는 # 접두사가있는 해시를 반환하므로 그랬다고 가정했습니다. 설명해 주셔서 감사합니다. :)
Daniel Lo Nigro

4
걱정하지 마세요. 왜 항상 그것을 반환하는지 궁금합니다.
alex

0

이 시도

var URL = "scratch.mit.edu/projects";
var mainURL = window.location.pathname;

if (mainURL == URL) {
    mainURL += ( mainURL.match( /[\?]/g ) ? '&' : '#' ) + '_bypasssharerestrictions_';
    console.log(mainURL)
}
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.