3482 次
2 に答える
2
わかりました、それを試してください:
var opt = document.createElement("option");
var content = document.createTextNode("PU (unrated)");
opt.appendChild(content);
var attr = document.createAttribute("value");
attr.nodeValue = "pu";
opt.setAttributeNode(attr);
var targetEl = document.getElementById("lobby-format");
targetEl.appendChild(opt);
これにより、もう 1 つのオプションが追加されますが、要点は理解できたと思います。
于 2012-06-03T20:26:48.340 に答える
0
次のスクリプトは、jQuery の優れた機能を使用して、特定のポイントでオプションを追加します ( jsBin でテスト済み)。
// ==UserScript==
// @name _Add new options at select points
// @include http://play.pokemonshowdown.com/*
// @include http://jsbin.com/azeveh*
// @require http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js
// ==/UserScript==
var selectNode = $("#lobby-format");
selectNode .find ("option[value='nu']")
.after ('<option value="pu">PU (unrated)</option>');
selectNode .find ("option[value='lc']")
.after ('<option value="bwcup">BW Cup (unrated)</option>');
OPの特定のサイトでは、AJAXを使用してそれを追加してい<select>
ます。AJAX を補正するには、waitForKeyElements
ユーティリティを使用します。そのようです:
// ==UserScript==
// @name _Add new options at select points, AJAX compensated.
// @include http://jsbin.com/azeveh*
// @include http://play.pokemonshowdown.com/*
// @require http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js
// @require https://gist.github.com/raw/2625891/waitForKeyElements.js
// ==/UserScript==
waitForKeyElements ("#lobby-format option[value='nu']", AddOption_1);
waitForKeyElements ("#lobby-format option[value='lc']", AddOption_2);
function AddOption_1 (jNode) {
jNode.after ('<option value="pu">PU (unrated)</option>');
}
function AddOption_2 (jNode) {
jNode.after ('<option value="bwcup">BW Cup (unrated)</option>');
}
于 2012-06-03T20:46:31.200 に答える