我正在尝试创建一个Chrome扩展程序,在加载/刷新某个网站的页面时会单击一个链接。到目前为止,我还没有能够让它工作,我尝试了不同来源的不同代码片段,但无论我尝试什么,它仍然没有做任何事情。
我的清单看起来像这样 -
{
"name": "SITENAME",
"manifest_version": 2,
"version": "1",
"content_scripts": [
{
"matches": ["*://SITENAME.com/*"],
"js": ["sitenamelink.js"]
}
], "permissions": [
"tabs" , "*://SITENAME.com/*"
]
}
该网站将在其末尾附加随机动态变量,例如“sitename.com/product/model...etc。等”所以真的没办法让它变得可预测,只有这样才能找到页面网址并每次更新扩展程序,这不是我想要做的事情。
我试图让js编码干净简单,我现在拥有的是 -
$(document).ready(function(){
$('#addToCartLink').trigger('click');
});
我也试过了 -
jQuery.noConflict();
jQuery(document).ready(function() {
jQuery('a#addToCartLink')[0].click();
});
和 -
$(document).ready(function(){
$('a#addToCartLink')[0].click();
});
包含链接的网页,如此编码 - <a id="addToCartLink" href="javascript:addToCart()" onclick="showBubble(this)" onmouseout="hideBubble()"><span>Add to Cart</span></a>
我不确定如何检查它以查看我的代码失败的位置,因为当我用chrome检查时,它只显示该页面编码的js错误。
那么我做错了什么?任何帮助深表感谢。感谢。
这是一个测试页面,如果您按照此链接选择大小,现在只需要点击添加到购物车链接。 - 测试页
答案 0 :(得分:1)
我的示例扩展(见下面的代码)对我来说很好。
例如:访问您提供的 Test Page ,点击ADD TO CART
链接,该项目就会添加到购物车中。
<强>的manifest.json:强>
{
"manifest_version": 2,
"name": "Test Extension",
"version": "0.0",
"offline_enabled": false,
"content_scripts": [{
"matches": ["*://*.sitename.com/*"],
"js": ["content.js"],
"run_at": "document_end",
"all_frames": false
}]
}
<强> content.js 强>:
document.getElementById('addToCartLink').click();