在某些地方,有一项政策要求用户点击按钮Continue
进入音乐流媒体网站。
我们假设我希望使用此网站的时间超过此政策所接受的时间。一段时间后音乐停止播放并刷新网页后 - 即使您没有离开页面,政策也会要求您再次点击Continue
。
我想创建一个脚本来检查连接是否仍然存在,但没有网站刷新(因为它播放音乐)。
我已经创建了一个脚本,点击Continue
,但不知道如何(如果可能)检查连接,if connection is broken
然后刷新网站并点击{ {1}}。
可以用GreaseMonkey完成吗?
Continue
给我点击脚本:
Continue
如果没有政策,那么页面的返回是:
if (document.title == 'Click continue')
{
var a = document.getElementById('continue-text');
a.children[1].click();
如果政策继续,则返回:
200 OK 318ms
答案 0 :(得分:1)
您可以像这样检查连接:
function checkConnection() {
var xmlhttp;
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
} else {
// code for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == XMLHttpRequest.DONE ) {
if(xmlhttp.status == 200){
// this might need some customisation:
var connected = document.getElementById("id_of_the_continue_button") ? true : false;
if (!connected) {
reconnect();
}
}
else {
reconnect();
}
}
}
// here you'll need a relevant url:
xmlhttp.open("GET", "http://deezer.com/", true);
xmlhttp.send();
}