Javascript 单击显示';什么是动态修改的?
目标页具有以下来源:Javascript 单击显示';什么是动态修改的?,javascript,jquery,click,tampermonkey,Javascript,Jquery,Click,Tampermonkey,目标页具有以下来源: jQuery(function () { var delay = 1000; //1 sn var id = "0b9cfb9f62ef7a2"; jQuery.ajax({ "method":"get", "url":"?ajax="+id, "success": function (json) { //alert(json); json = JSON.
jQuery(function () {
var delay = 1000; //1 sn
var id = "0b9cfb9f62ef7a2";
jQuery.ajax({
"method":"get",
"url":"?ajax="+id,
"success": function (json) {
//alert(json);
json = JSON.parse(json);
setTimeout(function(){
if(json.data != ""){
jQuery("#button").attr("class","btn btn-block btn-danger");
jQuery("#button").text(json.data);
}else{
jQuery("#button").click(function(){location.href=json.url});
jQuery("#button").attr("class","btn btn-block btn-success");
jQuery("#button").text("Download!");
}
},delay);
},
"error":function(){
alert("XXX");
}
});
});
我想做的是点击下载按钮在几秒钟后出现
我尝试使用以下代码:
waitForKeyElements ("#button:contains('Download')", clickSubmitBtnWhenItAppears);
function clickSubmitBtnWhenItAppears (jNode) {
var clickEvent = document.createEvent ('MouseEvents');
clickEvent.initEvent ('click', true, true);
jNode[0].dispatchEvent (clickEvent);
}
但它不起作用!我想问题出在按钮上,但我想不出来。很抱歉我对JS的了解不够。您的代码正在等待
#按钮的存在。它需要做的是等待#button
的存在,并等待button有文本“Download”
在这种情况下,您应该能够通过如下方式调整jQuery选择器来实现:
waitForKeyElements ("#button:contains('Download')", clickSubmitBtnWhenItAppears);
对于更复杂的情况,您可能需要这样做。我试过了,但没用。非常感谢!现在我明白了!