Javascript 使Greasemonkey对元素的ajax更改作出反应
有一个页面加载了一个空的span,如下所示:Javascript 使Greasemonkey对元素的ajax更改作出反应,javascript,greasemonkey,Javascript,Greasemonkey,有一个页面加载了一个空的span,如下所示:,然后用一些文本填充该span 我需要我的脚本来获取文本,但是Greasemonkey在填充文本之前运行,甚至我尝试使用的WaitForkEyements函数也没有帮助,因为页面加载时元素已经存在 也许我需要另一种方式?目前我正在做: waitForKeyElements ("#bla", get_span_content) 由于您已经在使用,请使用action函数的返回值来微调结果。如果跨度仅填充/更改一次,代码如下所示: waitForKeyE
,然后用一些文本填充该span
我需要我的脚本来获取文本,但是Greasemonkey在填充文本之前运行,甚至我尝试使用的WaitForkEyements
函数也没有帮助,因为页面加载时元素已经存在
也许我需要另一种方式?目前我正在做:
waitForKeyElements ("#bla", get_span_content)
由于您已经在使用,请使用action函数的返回值来微调结果。如果跨度仅填充/更改一次,代码如下所示:
waitForKeyElements ("#bla", get_span_content);
function get_span_content (jNode) {
var spanText = $.trim (jNode.text () );
if (spanText == "") {
//-- Still blank; tell waitForKeyElements to keep looking.
return true;
}
else {
// DO WHATEVER WITH spanText HERE.
}
}
waitForKeyElements ("#bla", get_span_content);
function get_span_content (jNode) {
var spanText = $.trim (jNode.text () );
var lastText = jNode.data ("lastText") || "";
if (spanText != lastText) {
// DO WHATEVER WITH spanText HERE.
jNode.data ("lastText", spanText);
}
return true;
}
如果同一跨度被多次更改,代码如下所示:
waitForKeyElements ("#bla", get_span_content);
function get_span_content (jNode) {
var spanText = $.trim (jNode.text () );
if (spanText == "") {
//-- Still blank; tell waitForKeyElements to keep looking.
return true;
}
else {
// DO WHATEVER WITH spanText HERE.
}
}
waitForKeyElements ("#bla", get_span_content);
function get_span_content (jNode) {
var spanText = $.trim (jNode.text () );
var lastText = jNode.data ("lastText") || "";
if (spanText != lastText) {
// DO WHATEVER WITH spanText HERE.
jNode.data ("lastText", spanText);
}
return true;
}
工作起来很有魅力。同时也感谢您在问题中提供了更好的格式