Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Melaksanakan Skrip Greasemonkey Berbilang Kali pada Halaman Yang Sama Tanpa Menyegarkan?

Bagaimanakah Saya Boleh Melaksanakan Skrip Greasemonkey Berbilang Kali pada Halaman Yang Sama Tanpa Menyegarkan?

Susan Sarandon
Susan Sarandonasal
2024-11-16 11:12:021044semak imbas

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

Melaksanakan Skrip Greasemonkey Berbilang Kali Setiap Halaman

Sebagai pengguna baharu Greasemonkey dan pembangunan web, anda menghadapi cabaran: menjalankan berbilang skrip pengguna kali pada halaman yang sama tanpa memuat semula halaman. Ini adalah perlu untuk senario seperti carian Amazon yang dipacu Ajax, di mana anda menyasarkan untuk memasukkan elemen tersuai ke dalam hasil carian apabila ia muncul.

Penyelesaian berkesan yang disyorkan oleh pengguna berpengalaman ialah waitForKeyElements() utiliti. Ia membolehkan anda menentukan elemen sasaran pada halaman dan mendaftarkan fungsi panggil balik yang akan dilaksanakan setiap kali elemen sasaran ditambah atau diubah suai.

Untuk menunjukkan penggunaannya, mari pertimbangkan skrip yang diubah suai untuk mengubah hasil carian 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>

Begini cara ia berfungsi:

  • The Fungsi waitForKeyElements() memantau elemen sasaran (#atfResults dalam kes ini) dan memanggil fungsi panggil balik (addCustomSearchResult) apabila elemen itu ditambah atau diubah suai.
  • Dalam fungsi panggil balik, anda boleh menyuntik kandungan tersuai anda ke dalam div hasil carian.
  • Memandangkan proses ini berlaku tanpa halaman dimuatkan semula, elemen tersuai anda akan muncul dalam hasil carian setiap kali permintaan Ajax baharu dibuat.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melaksanakan Skrip Greasemonkey Berbilang Kali pada Halaman Yang Sama Tanpa Menyegarkan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn