0

SafariでNinjaKitを使用しています(Greasemonkeyと同じ)。コードはこんな感じ

// ==UserScript==
// @name          demo
// @namespace     http://dailymed.nlm.nih.gov/
// @include       http://dailymed.nlm.nih.gov/dailymed/*
// @require      http://code.jquery.com/jquery-1.11.0.min.js
// @require      http://johannburkard.de/resources/Johann/jquery.highlight-4.closure.js
// ==/UserScript==
$(document).ready(function () {
    document.title = 'Hello!' + document.title;
    alert("ZaiJian");

    $("body p").highlight(["a"]);
});

このページにアクセスするalertと、うまく表示できますが、.highlight依存して動作しない機能がありjQuery.highlightますjQuery。それは言います:

TypeError: 'undefined' is not a function (evaluating 'c.toUpperCase()')

そして、これをデバッグするのはかなり難しいと思います..誰かそれについてアイデアを持っていますか?

4

2 に答える 2

0

jQuery プラグインを使用する前に、関連するドキュメントを読む必要があります。

初め、

スタイル シートにハイライト クラスのエントリを作成します。

.highlight { 背景色: 黄色 }

Greasemonkey では、これに相当するのはGM_addStyle('.highlight { background-color: yellow }');.

2番、

すべての li 要素で「bla」(大文字と小文字を区別しない) をすべて強調表示するには、次のコードを使用します。

$('li').highlight('bla');

かっこを省略しておく必要があります$("body p").highlight("a");

$(document).ready()第三に、 Greasemonkey スクリプトはデフォルトでDOMContentLoadedイベントで実行されるため、必要ないと思います。

すべてを一緒に入れて:

// ==UserScript==
// @name          demo
// @namespace     http://dailymed.nlm.nih.gov/
// @include       http://dailymed.nlm.nih.gov/dailymed/*
// @require       http://code.jquery.com/jquery-1.11.0.min.js
// @require       http://johannburkard.de/resources/Johann/jquery.highlight-4.closure.js
// @grant         GM_addStyle
// ==/UserScript==
GM_addStyle('.highlight { background-color: yellow }');
document.title = 'Hello!' + document.title;
$("body p").highlight("a");
于 2014-03-25T08:54:14.420 に答える