2011-05-20 52 views
2

我有點卡住了。我正在嘗試創建一個Grease Monkey腳本,該腳本將自動單擊出現在拍賣網站上的彈出窗口。我得到了Xpat,但我也經歷過與通用汽車的合作,才得以運轉。需要用油脂猴子腳本點擊一個出價按鈕

這裏是theelement檢查線,我從火災探測器獲得螢火蟲:

<input type="submit" style="width: 160px;" class="simplemodal-close" id="ctl00_mainContentPlaceholder_Button3" onclick="closePopup(); return false;" value="Back To Auctions" name="ctl00$mainContentPlaceholder$Button3"> 

和firpath,XPath的路線是:

.//*[@id='ctl00_mainContentPlaceholder_Button3'] 

爲完整的XPath xpather行:

/html/body/form[@id='aspnetForm']/div[@id='simplemodal-container']/div/div[@id='basic-modal-content']/div[@id='modal_winningBanner']/div/div[2]/div[2]/input[@id='ctl00_mainContentPlaceholder_Button3'] 

所以我在我的gm腳本中試圖讓它點擊按鈕的方法如下:

// @include * 
// @version 0.1 
// @description Automatically click // ==/UserScript== 

click_popupBtn1 = function() { 

var joinBtn=document.evaluate('//*[@id, "ctl00_mainContentPlaceholder_Button3"]' 
    ,document, 
     null, 
    XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, 
    null).singleNodeValue.click(); 
    alert(joinBtn); 
     if(!joinBtn) return false; 
      joinBtn.click(); 
     return true; 
} 


click_popupBtn1(); 

我覺得我的語法錯了,但不知道如何調試GM。我幾年前只使用過渦輪pascal,但想要在java和GM中完成一些簡單的事情。

任何幫助將是apreciated。

感謝 路德維希

+0

問得好,+1。請參閱我的回答,解釋問題的原因及其修正。 – 2011-05-22 01:05:09

回答

1

嗯,我不明白很多你所使用的詞語或這個複雜的語法。

但類似:

document.getElementById("ctl00_mainContentPlaceholder_Button3").click(); 

應該工作。

+0

@ jonathon謝謝,沒想到getelemntbyid語法。我在腳本中使用它,它工作。 'clickpopBtn1 = function(){0} \t var popBtn = document.getElementById(「ctl00_mainContentPlaceholder_Button3」); \t \t popBtn.click(1);' – Ludwig 2011-05-21 19:44:42

+0

@Ludwig,如果這個答案做了你,請[標記它作爲接受(http://meta.stackexchange.com/questions/5234/how-does -accepting-的回答工作/ 5235#5235)。 – 2011-05-21 21:35:23

1
var joinBtn=document.evaluate('//*[@id, "ctl00_mainContentPlaceholder_Button3"]' 
           ,document,  
           null,  
           XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, 
           null).singleNodeValue.click(); 

上面的第一個參數不是語法有效的XPath表達式。

應該是

//*[@id = "ctl00_mainContentPlaceholder_Button3"] 
+0

感謝dimtre,我嘗試過,但由於某種原因,我不能用它來點擊帶有這個表達式的按鈕。但與document.getElementById表達式我確實得到它的工作。隨着時間的推移,我想我會發現我的錯誤,然後踢它自己:P – Ludwig 2011-05-22 21:21:41

+0

編輯標題,這適用於bidbuttoms,但彈出窗口仍然有問題。 – Ludwig 2011-06-04 11:17:44