>웹 프론트엔드 >JS 튜토리얼 >새로 고치지 않고 동일한 페이지에서 Greasemonkey 스크립트를 여러 번 실행하려면 어떻게 해야 합니까?

새로 고치지 않고 동일한 페이지에서 Greasemonkey 스크립트를 여러 번 실행하려면 어떻게 해야 합니까?

Susan Sarandon
Susan Sarandon원래의
2024-11-16 11:12:021047검색

How Can I Execute a Greasemonkey Script Multiple Times on the Same Page Without Refreshing?

Greasemonkey 스크립트를 페이지당 여러 번 실행

Greasemonkey 및 웹 개발의 새로운 사용자로서 다음과 같은 문제에 직면하게 됩니다. 페이지를 새로 고치지 않고 같은 페이지에 여러 번. 이는 검색 결과에 사용자 정의 요소를 삽입하려는 Ajax 기반 Amazon 검색과 같은 시나리오에 필요합니다.

숙련된 사용자가 권장하는 효과적인 솔루션은 waitForKeyElements() 유틸리티. 페이지에서 대상 요소를 지정하고 대상 요소가 추가되거나 수정될 때마다 실행되는 콜백 함수를 등록할 수 있습니다.

사용 방법을 보여주기 위해 Amazon 검색 결과를 변경하기 위해 수정된 스크립트를 고려해 보겠습니다. :

// Greasemonkey script to alter Amazon search results
// ==UserScript==
// @name     _Amazon Search, alter results
// @include  http://www.amazon.com/s/*
// @require  http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js
// @require  https://gist.github.com/raw/2625891/waitForKeyElements.js
// @grant    GM_addStyle
// ==/UserScript==

function addCustomSearchResult (jNode) {
    // Inject your custom element
    jNode.prepend (
        '<div>
작동 방법은 다음과 같습니다.

  • waitForKeyElements() 함수는 대상 요소(이 경우 #atfResults)를 모니터링하고 콜백을 호출합니다. 요소가 추가되거나 수정될 때마다 함수(addCustomSearchResult)를 수행합니다.
  • 콜백 함수에서 검색 결과 div에 사용자 정의 콘텐츠를 삽입할 수 있습니다.
  • 이 프로세스는 페이지 새로 고침 없이 수행되므로 새로운 Ajax 요청이 있을 때마다 맞춤 요소가 검색 결과에 나타납니다.

위 내용은 새로 고치지 않고 동일한 페이지에서 Greasemonkey 스크립트를 여러 번 실행하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.