我想要达到的目的是: 我加载了一些网页,这里有一些可点击的内容,如按钮,可点击的div等。我想要实现的是:我想不断运行javascript代码,点击一些按钮然后等待15秒后,刷新页面并重复。 (是的,某种机器人)。我知道如何实现点击等。我将管理代码,但如何实现这样的功能?我知道Chrome有一些扩展可以做这些事情,但我现在不记得了。不胜感激一些提示。
我尝试创建自己的html文件并动态加载我希望机器人工作的页面的整个html到我的html文件的div中。这样的事情。
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Load remote content into object element</title>
</head>
<body>
<!--<div id="siteloader" style="width: 1000px; height: 1000px;"></div>-->
<div id="siteloader"></div>
<script src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
<script>
$("#siteloader")
.html('<object data="http://linktowebpage.com"/>');
</script>
</body>
</html>
问题是:它创建了一个iframe,它是如此之小,我不能让它变得更大(它像150x150像素)。
正如我所说的,我不想做这些事情(创建我自己的页面等)。
会感激任何提示;)
答案 0 :(得分:1)
据我了解,您希望在某些第三方网页上运行您的JS。使用<iframe>
它将无效,因为您最多可以阅读页面内容。
您可以编写一个代码来执行所有操作并在控制台中运行它。但是,例如,如果你想使用jQuery,一个页面必须拥有它。所以在这种情况下最安全的选择是用纯JavaScript编写它。正如我猜测的那样,缺点和取消资格的问题是你必须在每次刷新后运行它。
在您的情况下,您可以使用Tampermonkey(Chrome)或Greasemonkey(Firefox)等工具,它允许您按域运行JS。
答案 1 :(得分:0)
使用setInterval()
重复执行此功能,并使用ajax()
加载页面。
检查以下示例以开始使用。
var i = 1;
setInterval(function() {
$.get("http://linktowebpage.com", function(data) {
$('#siteloader').html(data);
});
}, 60000);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>Specified URL will be loaded every 1 minutes</div>
<br>
<div id="siteloader"></div>