2015-02-08 86 views
0
var account; 
var users = ["********"]; 
var password = "*********"; 
var gameId = 126945035 //Put your game ID here 

for (account = 0; account < users.length; account++) { 
    window.location.assign('www.roblox.com'); 
    $(document).ready(function(){ 
     document.getElementById("LoginUsername").value = users[account]; 
     document.getElementById("LoginPassword").value = password; 
     document.getElementById('LoginButton').click(); 
     setTimeout(function(){ 
     window.location.assign('http://www.roblox.com/Game/PlaceLauncher.ashx?request=RequestGame&placeId=' + gameId); 
      setTimeout(function(){ 
      window.location.assign('http://www.roblox.com/---place?id=' + gameId); 
       $('.upvote').click(); 
      }, 1000); 
     }, 1000); 
    }); 
}; 

当我运行它,它应该登录到帐户,似乎正在工作,但在使用setTimeout()后,它不会运行任何事情后。setTimeout()没有运行?

所有的*都是我无法分享的信息。

+0

出于好奇,为什么你的代码直接面向roblox.com? – leDominatre 2015-02-08 18:15:57

+0

我正在做一些事情来自动登录,然后'竖起大拇指'的地方。 – sinblade 2015-02-08 18:20:49

回答

0

这是因为您正在离开当前网页的第一个setTimeout。这不是由setTimeout函数引起的,而是你离开页面的事实。

Location.assign()方法使窗口加载并显示URL参数的页面。

这基本上意味着,当你触发window.location.assign('url')时,你强制页面重新加载。这会停止处理任何其他代码行。

您可能会想要么

一)发出Ajax请求来初始化认证过程

b)利用传统的后回请求到第一URL的请求的状态保存在session中。工作流中访问的第二页将具有适当的凭证。

+0

我完全不熟悉ajax,你能举个例子说明我在这种情况下如何使用它吗? – sinblade 2015-02-08 18:19:49

+0

如果没有更深入的应用知识,这很难回答。你可能只想创建一个带认证URL的表单作为一个动作,一个成功的文章将重定向到第二个URL。 – Seth 2015-02-08 18:57:12

+0

我不是那种先进的,但我认为这就是我要去的。我希望它能够登录,这就是所有元素的用途,然后我想去链接,欺骗网站说我已经访问了游戏,之后它会导航到游戏的URL,然后点击.upvote类。 – sinblade 2015-02-08 20:06:22