2009-11-05 50 views
0

當我們使用這種類型的輸入提交表單時,座標(x,y)被附加到結果中。如何模擬點擊<input type =「image」/>?

它工作,如果我動態創建2隱藏的輸入,但我想要的東西不同。
事件或的MouseEvent將是巨大的,但我不能使它工作

這裏是我當前的代碼:(正常工作)

var input = document.createElement("input"); 
input.type = "hidden"; 
input.name = "x"; 
input.value = posx; 
my_form.appendChild(input); 

input = input.cloneNode(false); 
input.name = "y"; 
input.value = posy; 
my_form.appendChild(input); 

我給你的情況的例子

讓我們想象一下靠近像表單元素有一個純文本,上面寫着:在大於20和較小超過60

一個正常的人會閱讀並點擊通常任意位置點擊下面的圖片。
但我需要,因爲沒有手的機器人,模擬了相同的單擊事件

+0

你使用的是框架還是純javascript? – 2009-11-05 19:20:41

+0

pure javascript – w35l3y 2009-11-05 19:21:23

+0

對posx和posy是如何填充的好奇...... – 2009-11-05 19:33:10

回答

2

沒有完全理解你正在嘗試做的(你的問題是有點含糊,IMO),我不得不問這樣的:有你曾經考慮過使用jQuery或其他JavaScript庫/框架?我知道有時候,對於非常簡單的網站來說,這太過分了。但是,它可能是值得的,以減輕你自己弄出這些東西的頭痛。

從我所能理解的,你正在使用一個「圖像」表單元素來提交一個表單,你想模擬一個點擊圖像元素來檢索x/y座標的東西。我可能是錯的。你能更詳細地瞭解你的細節嗎?

我會看看我是否可以告訴你如何在jQuery中做到這一點,當我知道更多關於你的問題。

+0

是的,那正是我想要做的。 我想檢索圖像表單元素中模擬鼠標點擊的座標。就像我手動點擊圖片一樣。 如果jQuery是解決方案,那麼我會保留隱藏的輸入。 謝謝 – w35l3y 2009-11-05 19:34:28

1

我不能告訴你想要追加結果。表單中的值?這是自動的,不需要代碼(它們遇到了x和y,或者elementname.x和elementname.y)。

編輯之後評論:
您可以避免節點插入事件,當時沒有做元素;即將x和y添加到表單中。然後在事件中,您可以簡單地設置它們的值。當然你也可以綁定不同的事件,我不知道你的情況,但是我做了an example,它使用附加在頁面主體上的onClick事件。相反,您可能希望將特定的onClick事件綁定到不同的可點擊項目,併爲他們插入自己的位置,但在我的案例中,我在頁面上提交了鼠標的位置。如果這沒有幫助,請對此進行評論,然後我會看看是否可以再次修改它。

+2

如果我只是使用click(),座標將作爲0,0發送。我想模擬我想要的任何其他座標。 – w35l3y 2009-11-05 19:41:46

+0

這仍然沒有意義 - 也許你可以逐步解釋邏輯應該是什麼? – annakata 2009-11-05 19:54:40

+0

我明白了。我無法理解你爲什麼要這樣做,但我不需要。我會考慮解決方案並編輯我的答案。 – 2009-11-05 19:59:38

相關問題