为什么我的jQuery .click()函数不起作用?我被难住了



在阅读了几篇类似的帖子但没有找到解决方案后,我提出了一个问题,希望能解决我的沮丧情绪。

下面是我试图点击的cosole.log((上的Object输出。

Object { 0: a#addressSelect2571765.addressLink, length: 1, prevObject: {…} }
​
0: <a id="addressSelect2571765" class="addressLink" rel="nofollow" data-method="post" href="/giveaway/enter_choose_a…/326698?address=2571765">
​
length: 1
​
prevObject: Object { 0: HTMLDocument https://www.goodreads.com/giveaway/enter_choose_address/326698-firekeeper-s-daughter?ref=giv_enter_cta, length: 1 }
​
<prototype>: Object { jquery: "3.6.0", constructor: S(e, t), length: 0, … }

我尝试过几种变体:

// ==UserScript==
// @include      *www.goodreads.com/giveaway*
// @require      https://code.jquery.com/jquery-3.6.0.min.js
jQuery(document).ready(function(){

$(#addressSelect2571765).click();

});
OR
jQuery(document).ready(function(){

$(a.addressLink).click();

});
OR
jQuery(document).ready(function(){

$(a:contains('select this address')).click();

});

仅此对象的每一次尝试都失败了。我可以点击下一个屏幕上的其他对象。所以,我不确定为什么这个实例不起作用。

我不经常发帖,如果我遗漏了任何相关信息,请告诉我。我很乐意提供。提前感谢您的任何建议。

您需要在引号下添加选择器。

示例:$('#addressSelect2571765'(.click((

我确实找到了一个解决方案,但我不知道为什么它会有所不同。在之前的脚本中,我使用了以下函数来执行.click((.

function clickGiveaway(selector)
{
var x = $(selector);
if (x.length > 0)
{
x[0].click();
}
}

接下来,我使用以下命令调用该函数。

clickGiveaway('a.addressLink');

为什么这可以解决我的问题?

最新更新