完全に実行されている既存のスクリプトがあります。Firefox2.xおよびGreasemonkey0.8.x用にコーディングされており、jQueryを使用できません。
古い作業スクリプト:
//--- Make sure this list of names is all uppercase.
var usersWhoCanSetPriority = ['JOHN', 'LUKE', 'JEFF', 'MAX', 'ANDY'];
var bDisablePrio = true;
var tdNodes = document.getElementsByTagName ("TD");
for (var J = tdNodes.length - 1; J >= 0; --J) {
var tdNode = tdNodes[J];
if (tdNode.className == "user") {
var userName = tdNode.textContent.replace (
/^(?:.|\n|\r)+\(User:\s+([^)]+)\)(?:.|\n|\r)+$/i, "$1"
).toUpperCase ();
if (usersWhoCanSetPriority.indexOf (userName) > -1) {
bDisablePrio = false;
}
}
}
if (bDisablePrio) {
var oldInput = document.getElementsByName ("prio");
oldInput[0].setAttribute ("disabled", "disabled");
}
新しいスクリプトの例:
これで、宛先入力が存在する場合、特権ユーザーは任意の値を設定できるはずです。ただし、特権のないユーザーは設定とを
ブロックする必要があります。12
22
つまり、ユーザーがNOT ->'JOHN'、'LUKE'、'JEFF'、'MAX'、'ANDY'(フッターから)でない場合は、prio入力を無効にし、ユーザーが「12」を入力しているときに入力を停止します。または「22」を押して、エラーメッセージを書き込みます。
スティーブ(「許可されていないユーザー」)は、たとえば120、121、220、222、およびその他すべての番号を入力できますが、12と22は入力できないことを知っておく必要があります。12も120にあるので問題かどうかわかりません!'JOHN'、'LUKE'、'JEFF'、'MAX'、'ANDY'は、すべての数値を入力に入力できます。
古いスクリプトは、site-one.htmlやsite-two.htmlなどのさまざまなページで実行されます。ただし、宛先入力はsite-one.htmlとsite-three.htmlにあります。つまり、prio-inputしかない場合もあれば、prio-inputしかない場合もあります。 prio-inputとdestination-inputの両方があります。
どうすればそれをすべて行うことができますか?
よろしく、ベルンテ