Chrome에서 Google 검색 결과 링크 리디렉션 (오른쪽 클릭)을 비활성화하는 방법은 무엇입니까?


22

Google에 로그인하면 Google 검색 결과가 리디렉션됩니다 (추적 등). 사이트를 방문하지 않고 URL을 복사 / 붙여 넣기가 쉽지 않기 때문에 성가신 일입니다. 리디렉션이 없으면 검색 결과에서 링크를 마우스 오른쪽 버튼으로 클릭하고 "링크 주소 복사"를 선택하면됩니다. 이제 마우스 오른쪽 클릭을 모니터링하는 일부 Google JavaScript 코드로 변경됩니다.

Chrome에서 어떻게 비활성화 할 수 있습니까? 이전에 Chrome 확장 프로그램이 있었지만 더 이상 작동하지 않는 것 같습니다.


오른쪽 클릭의 목적은 무엇입니까?
Beniamin

4
@Beniamin : 내 질문에서 말했듯이 : "URL 붙여 넣기 [붙여 넣기]". 난 그냥 URL을 얻고 싶습니다 (예 : 보고서에 붙여 넣기 등)
Rabarberski

4
참고 : 구글이 긴 URL을 연결하기 때문에 커서로 텍스트를 선택하고 ctrl-c를 누르는 것이 항상 옵션은 아닙니다.
Rabarberski

승인. 그러나 링크를 마우스 오른쪽 버튼으로 클릭하면 Google 추적 링크로 변경됩니다. 따라서 페이지를 열지 않으면 해당 링크를 얻을 수 없습니다 .Google에서 원하는 페이지로 리디렉션하고 원하는 것을 갖게됩니다.
Beniamin

2
문제는 그것을 피하는 방법에 관한 것입니다. (이전에는 크롬 확장 기능이 더 이상 작동하지 않았으며 파이어 폭스 용 그리스 몽키 스크립트가 있었지만 마지막으로 확인했을 때 문제가 발생했습니다. "페이지를 열지 않으면 해당 링크가 표시되지 않습니다" 이해가되지 않습니다).
Rabarberski

답변:


7

이제 내가 원하는 것을 알면 onmousedown링크에서 속성 을 삭제하는 작은 스크립트를 작성했습니다 .

여기있어:

// ==UserScript==
// @name           Delete onmousedown
// @namespace      google
// @include        http://www.google.*/*
// ==/UserScript==
var runOnce = function(){
    var items = document.querySelectorAll('li.g h3.r a');
    for(var i = 0, len = items.length; i< len; i++){
        items[i].removeAttribute('onmousedown');
    }
}
document.body.appendChild(document.createElement("script")).innerHTML = "("+runOnce+")()";

.user.js로 끝나는 파일로 저장하고 Chrome에 드롭하여 도움이되는지 알려주십시오.

추신. 영어는 제 언어가 아니므로 오해해서 죄송합니다.

편집 : Google Instant와 작동하도록 논리를 추가했습니다. 그것이 당신을 위해 작동하는지 알려주세요.

편집 : Google 순간 지원없이 '버전없이'버전으로 롤백했습니다.


노력해 주셔서 감사합니다. 비슷한 것을 시도했지만 Chrome에서 스크립트 파일을 드래그하면 브라우저에서 스크립트 파일이 열리고 스크립트를 설치하는 대신 소스 코드가 표시됩니다.
Rabarberski

파일을 열려면 Ctrl + O를 시도하십시오. google.user.js와 같은 이름을 지정 하시겠습니까?
Beniamin

크롬 창을 최대화해야한다는 것을 읽었습니다.
Beniamin

또는 그리스에 그리스 몽키 같은 확장을 설치하십시오. 스크립트를 설치하는 데 도움이되며 그리스 몽키 스크립트가 작동합니다. 예 : chrome.google.com/webstore/detail/…
Beniamin

1
@Rabarberski, Google 순간 검색 사용을 중지해야합니다.
Synetech


3

Firefox 를 사용하는 경우 다음 답변이 적용되므로 운이 좋습니다. Chrome을 사용하는 경우 운이 훨씬 적습니다.이 답변의 하단을 참조하십시오.

Greasemonkey 는 DOM 이로 드되면 사용자 스크립트를 시작 하므로 "DOM ready"리스너를 구현할 필요가 없습니다.

또한 Firefox에 있으므로 최신 사탕을 사용할 수 있습니다 : for...of, let.

결과 Greasemonkey 스크립트는 다음과 같습니다.

// ==UserScript==
// @name        Remove Google redirects
// @namespace   google
// @description Remove redirects from Google Search result links.
// @include     https://www.google.*/*
// @version     1
// @grant       none
// ==/UserScript==

for (let element of document.querySelectorAll('#res .r > a')) {
    element.removeAttribute('onmousedown');
}

받는 사람 덕분에 let, 따라서 당신이에 위의 코드를 묶어야 할 필요가 없습니다, 로컬 선언이없는 인생 .


불행한 Chrome (Tampermonkey) 사용자의 경우 :

스크립트가 실행될 때 링크는 찾을 수 없지만 document.readyState === 'complete'… 결과적으로 타이머가있는 루프를 구현해야합니다.

따라서 다음과 같이 끝납니다.

// ==UserScript==
// @name        Remove Google redirects
// @namespace   google
// @description Remove redirects from Google Search result links.
// @include     https://www.google.*/*
// @version     1
// @grant       none
// ==/UserScript==

(function removeGoogleRedirects() {

    var links = document.querySelectorAll('#res .r > a');

    if (links.length === 0) {
        setTimeout(removeGoogleRedirects, 100);
        return;
    }

    for (var link of links) {
        link.removeAttribute('onmousedown');
    }

})();

2018 년 10 월 업데이트 :
Google 페이지에서 마크 업이 변경되었으므로 h3.r로 변경해야했습니다 div.r.
나는 멀리 가서 교체 h3.r > a와 함께 #res .r > a(그냥 "을 .class"로 대체 "tag.class", 셀렉터가 너무 일반적되지 않도록 보안으로 부모를 추가).


Firefox 스크립트의 텍스트를 가져 와서 시작 부분에 'javascript :'를 추가 한 다음 책갈피를 작성하면 la bobobobo의 답변이 좋습니다.
ojchase


0

이 스크립틀릿을 가장 쉽게 실행할 수 있습니다. 검색 결과 링크 마우스 오른쪽 단추로 클릭 하기 전에 이를 복사하여 책갈피 막대로 끌어서 클릭하십시오 .

javascript: var items = document.getElementsByTagName('a');  for( var i = 0 ; i < items.length; i++ )  if( items[i].className=='l' )  items[i].onmousedown = null ;

이 사람들은 사탄이지만 하나님은 베니 마인이 주신 글을 업데이트했습니다. 사용 이 트릭 경량 확인 페이지는 이는 MouseDown 이벤트의 요소를 제거하기 전에로드. 이 작업을 수행 하려면 TamperMonkey 를 사용해야 합니다.

// ==UserScript==
// @name           Delete onmousedown
// @namespace      google
// @version        0.1
// @description    Allows you to right click links on Google search results without having them mangled on you.
// @include          http://www.google.*/*
// ==/UserScript==
var tid = setInterval( function () {
    if ( document.readyState !== 'complete' ) return;

    var items = document.getElementsByTagName('a');

    var succeeded=false;
    for( var i = 0 ; i < items.length; i++ )
    {
      if( items[i].className=='l' )
      {
        if( items[i].onmousedown ) { succeeded=true; } // we stripped the urls
        items[i].onmousedown = null ;
      }
    }

    if( succeeded )  clearInterval( tid ); // stop invoking this routine when we succeeded.
}, 100 );
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.