2014-05-23 38 views
-1

我想弄清楚如何在dom加载后刷新页面。如果dom加载并且页面上没有特定的文本,它会刷新并保持循环,直到找到文本。当dom被加载时刷新页面

// ==UserScript== 
// @name  My Fancy New Userscript 
// @namespace http://use.i.E.your.homepage/ 
// @version 0.1 
// @description enter something useful 
// @match  http://stackoverflow.com/questions/8192126/clicking-a-button-on-a-page-using-a-greasemonkey-userscript-in-chrome/8192413#8192413 
// @copyright 2012+, You 
// @require http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js 
// ==/UserScript== 

function available() { 
    var nodeList = document.querySelectorAll('.table'); 
    if (nodeList[0].innerHTML.indexOf("Not available.") != -1) { 
    Location.reload(); 
    else { 
    alert("Hello! I am an alert box!!"); 
    } 
    } 
} 

$(function() { 
    available(); 
}); 
+0

这听起来有点狡猾,它会不会导致一个永无止境的重定向循环? – diggersworld

+0

如果找到文本,则不会发生,但它会产生多大的差异,并不能保证文本永远不会出现。此外,你应该发布你尝试过的例子。 –

+0

到目前为止添加了我的代码。由于某种原因,Tampermonkey不让我启用该脚本。 – user3670037

回答

0

使用JavaScript重新加载页面:

Location.reload(); 

您需要为您的文本的位检查以及一些方式。 没有看到你的DOM结构,我无法给出这方面的准确答案。

+0

谢谢你,我将它添加到我的脚本中。由于某种原因,我的脚本不会启用。 – user3670037

2

位置必须小写。

location.reload(); 


顺便说一句,路过一个真正的PARAM意味着页面将从服务器加载,而不是比从缓存中加载。