在Javascript中模拟鼠标单击

在Javascript中模拟鼠标单击,javascript,Javascript,寻找一个用鼠标左键点击由ID或类名标识的图像/按钮的Javascript,等待x秒,然后重复。并且能够在开发者工具控制台、chrome和firefox中运行 我试着自己写,因为我想这应该是一个简单的代码,但经过两个小时的尝试和错误没有运气,我开始用尽选择 希望Javascript专业人士有时间帮助一个新手;) 谢谢如果您愿意使用jQuery,您可以使用以下简单函数: window.setInterval(function(){ $("#divToClick").trigger("clic

寻找一个用鼠标左键点击由ID或类名标识的图像/按钮的Javascript,等待x秒,然后重复。并且能够在开发者工具控制台、chrome和firefox中运行

我试着自己写,因为我想这应该是一个简单的代码,但经过两个小时的尝试和错误没有运气,我开始用尽选择

希望Javascript专业人士有时间帮助一个新手;)


谢谢

如果您愿意使用jQuery,您可以使用以下简单函数:

window.setInterval(function(){
    $("#divToClick").trigger("click");
}, 1000);
每1000毫秒或1秒调用一次

对于纯Javascript解决方案,您应该看看

或者,如果你对支持IE不感兴趣,你可以用一个简单的方法,使用
Event()
构造函数和
Event.dispatch()

document.getElementById(id).click()
您可以使用and
dispatchEvent
进行以下操作:

var support = true; // check if event constructor is supported

try {
    if (new MouseEvent('click', {bubbles: false}).bubbles !== false) {
        support = false;
    } else if (new MouseEvent('click', {bubbles: true}).bubbles !== true) {
        support = false;
    }
} catch (e) {
    support = false;
}

setInterval(function() {
    if (support) {
        var event = new MouseEvent('click');
    }else{
        var event = document.createEvent('Event');
        event.initEvent('click', true, true);
    }
    elem.dispatchEvent(event);
},1000);

为什么不购买Ranorex或Quick test Prono?这根本不是新手问题!也许这会有帮助,这只适用于输入元素和linksTry:尝试了在Fiddle上编写的Javascript代码,但没有单击图像,也没有返回错误。只需输出44并单击。当然用实际ID替换了测试。@zyl1647-这就是控制台在反复记录相同值时所做的,它只是在前面添加一个数字作为它记录到控制台的次数,试试看->遗憾的是,相同的,但是输出[18,18,4,3200,数组[3],“dbbbaccdecd”]当我在脚本中手动单击图像时runs@zyl1647-上面贴的小提琴真的输出了吗?在哪个浏览器中.trigger拯救了我的生命。