首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用javascript/jquery自动按回车键/确认警告框

如何使用javascript/jquery自动按回车键/确认警告框
EN

Stack Overflow用户
提问于 2012-12-17 04:08:35
回答 4查看 12.2K关注 0票数 2

我正在编写一个用户脚本(javascript/jquery)来自动化浏览器游戏中的一些事情。有一场拍卖会,商品可以打折购买。我想要一个脚本,当它有33%的折扣时自动购买商品。

这个脚本在拍卖的url (greasemonkey)上运行,然后检查是否有产品至少有33%的折扣-如果是这样的话,它将按下该行中的按钮来购买产品。

我现在面临的问题是:一旦你按下按钮,你必须确认你想要通过一个警告框购买商品。有没有办法让这一切自动化呢?

我用谷歌搜索了一下,还检查了stackoverflow,人们说用javascript/jquery是不可能的。真的是这样吗?这意味着,在我正在玩的浏览器游戏中,基本上不可能自动购买商品。我在考虑让脚本自动按ENTER键,因为这等同于在警告框中单击“Ok”。但他们表示,这也是不可能的。所以现在我在想:有没有一种方法可以自动化呢?

这是按钮背后的代码:

代码语言:javascript
运行
复制
<input id="buybutton_3204781" class="button" type="button" onclick="if(confirm('Wil je deze producten kopen?')){document.submitForm.BuyAuctionNr.value=3204781; document.submitForm.submit();}{return false;}" value="Kopen">

编辑:

万岁,它是通过改变按钮的属性onClick来工作的!下面是使用的代码:

$('element').attr('some attribute','some attributes value');

现在可以关闭了,非常感谢大家,感谢你们的帮助!

EN

回答 4

Stack Overflow用户

发布于 2012-12-17 04:33:38

根据浏览器的不同,可能会覆盖window.confirm,例如

代码语言:javascript
运行
复制
(function() {
   'use strict';

    // Might was well save this in case you need it later
    var oldConfirm = window.confirm;
    window.confirm = function (e) {
        // TODO: could put additional logic in here if necessary
        return true;
    };

} ());

我没有做任何广泛的测试,但我至少能够在firebug中覆盖window.alertwindow.confirm

请注意,如果他们的脚本已经获得了对警报/确认的引用(例如var a = window.confirm; a('herp');),这对您没有帮助

另一种方法是覆盖您正在自动单击的按钮的功能,或者使用一些xhr手动发出AJAX / POST。

票数 4
EN

Stack Overflow用户

发布于 2012-12-17 04:21:38

不需要做太多更改,您可以尝试这样做

代码语言:javascript
运行
复制
$(".button").each(function() {
  if (this.id.indexOf("buybutton")!=-1) this.onclick=function() {
    document.submitForm.BuyAuctionNr.value=this.id.replace("buybutton_","");
    document.submitForm.BuyAuctionNr.submit();
  } 
});

我使用thisonclick是因为我想替换现有的onclick处理程序,而不是添加一个

如果您只是想购买,请获取ID并使用您的用户脚本提交表单

由于我不知道您是如何知道折扣的,因此示例如下

代码语言:javascript
运行
复制
$(".button").each(function() {
  if (this.id.indexOf("buybutton")!=-1) {
    var ID = this.id.replace("buybutton_","");
    if ($("#discount_"+ID).val()<30) {
      document.submitForm.BuyAuctionNr.value=ID;
      document.submitForm.BuyAuctionNr.submit();
    }
  } 
});

它将提交它找到的第一个。将提交替换为$.get或post,以提交所有打折商品

票数 1
EN

Stack Overflow用户

发布于 2012-12-17 04:58:54

使用JavaScript,您可以以任何您喜欢的方式修改HTML和JavaScript代码。

我建议修改OnClick函数,以便

代码语言:javascript
运行
复制
<input id="buybutton_3204781" class="button" type="button" 
onclick="
if(confirm('Wil je deze producten kopen?'))
{
    document.submitForm.BuyAuctionNr.value=3204781; 
    document.submitForm.submit();
}
{
    return false;
}" value="Kopen">

简单地说变成了

代码语言:javascript
运行
复制
<input id="buybutton_3204781" class="button" type="button" 
    onclick=
    "document.submitForm.BuyAuctionNr.value=3204781; 
     document.submitForm.submit();" 
value="Kopen">
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13905043

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档