我正在嘗試將功能添加到我製作的Chrome擴展程序中。我想要做的是一旦導航到特定的頁面,我希望能夠在工具欄上按下一個按鈕並讓它「點擊」該頁面上的所有鏈接,包含harvest.game?user = 123456與123456是所有鏈接的不同數字。它可以使用jQuery或JavaScript。唯一的問題是腳本需要作爲元素插入到頁面的頭部,因爲不允許跨域腳本,因此沒有外部引用到js文件。我可以處理元素的添加,但是,我沒有計算出實際的功能。點擊包含字符串的頁面上的所有鏈接?
含有鏈接的所有元素看起來像這樣:
<div class="friendWrap linkPanel">
<h5>Christine...</h5>
<div class="friend-icon">
<img src="https://graph.facebook.com/100001726475148/picture"></div>
<div class="levelBlock friend-info">
<p>level</p>
<h3 class="level">8</h3></div>
<a href="harvest.game?user=701240" class="btn">Harvest</a>
<a class="boxLink" href="profile.game?user_id=701240"><span></span></a></div>
像這樣的東西(我知道這是一個爛攤子,不工作)?或者可能更好使用jQuery?
var rlr=1;
function harvestall(){var frt,rm,r,rld,tag,rl;
var frt=1000;
r=document.getElementsByClassName("friendWrap linkPanel");
rl=r.length;
rld=rl-rlr;
if(rld>=0){tag=r[rld].getElementsByTagName('a');
if (rl>=1 {rlr++;harvestall();}
else if (rl>=1) {tag[1].onclick();do something??? ;}
}
所以將其添加到頁面的頭部導致harvestLinks沒有:-( 定義'FJ1 =使用document.createElement(「腳本「); FJ1.type =」text/javascript「; FJ1.appendChild(document.createTextNode(」$(function harvestLinks($){$(\「a [href * ='harvest.game?user='] ()「)。trigger(」click「);});」)); document.getElementsByTagName(「head」)[0] .appendChild(FJ1);' –
@ShcFinalJudgement擺脫$();圍繞函數和參數$,那麼它應該工作。 –
有關性能注意事項,請參閱以下內容:http://jsperf.com/jquery-complex-selector-vs-filter –