Gon*_*ing 2 javascript jquery google-chrome-extension
我正在编写一个插件,以便在亚马逊卖家中央仪表板中为自己处理有用的信息.
由于某种原因,click()对下一页链接的调用不会从上下文脚本中触发.
代码正在运行,但这没有任何作用:
var $next = $('a:contains(Next)');
$next.click();
Run Code Online (Sandbox Code Playgroud)
但奇怪的是这有效:
var $next = $('a:contains(Next)');
window.location = $next.attr("href");
Run Code Online (Sandbox Code Playgroud)
链接HTML的示例是:
<td align="right" valign="middle" width="60%" class="tiny">
<nobr> <a href="https://sellercentral-europe.amazon.com/gp/feedback-manager/view-all-feedback.html?ie=UTF8&currentPage=2&dateRange=&descendingOrder=1&pageSize=50&sortType=Date">Next</a>
</nobr>
</td>
Run Code Online (Sandbox Code Playgroud)
在Chrome扩展程序中运行点击事件有任何限制吗?按下另一页上的按钮效果很好(尽管那个结构不同 - 见下文):
<a class="buttonImage" name="View all your feedback" href="https://sellercentral-europe.amazon.com/gp/feedback-manager/view-all-feedback.html/ref=fb_fbmgr_vwallfb?ie=UTF8&dateRange=&descendingOrder=1&sortType=Date">
<span class="awesomeButton buttonLarge primaryLargeButton inner_button">
<span class="button_label">View all your feedback</span>
</span>
</a>
Run Code Online (Sandbox Code Playgroud)
DOM元素具有本机.click()方法.因此以下示例有效:
$('a')[0].click() (例)
$('a').get(0).click() (例)
document.querySelector('a').click() (示例) - 值得指出的是jQuery 不是必需的
相关的W3文档.
这使我假设您在选择元素集合(jQuery对象)时无法以编程方式更改URL.我想你需要选择单独的DOM元素.因此,以下应该有效:
var $next = $('a:contains(Next)');
$next[0].click();
Run Code Online (Sandbox Code Playgroud)