2011-05-29 133 views
7

我正在使用Chrome擴展,並且希望在用戶點擊某些元素時使用prompt()來獲取用戶輸入。不幸的是,出於某種原因,當我作爲一個onclick(或者在一個jQuery $('#something')。click(function))中調用時,我無法使prompt()或alert()工作,這就是我最初遇到的這個)。也就是說,如果我使用下面的HTML作爲我的擴展名的popup.html,第一個警報就會出現,但第二個警報會在屏幕上閃爍,然後立即消失而沒有任何用戶干預。然後擴展彈出窗口也會立即關閉。Chrome擴展彈出窗口中的onclick中的JavaScript警報立即消失

<script> 
alert("This alert works"); 
</script> 
<input type="button" onclick="alert('This one disappears')" value="Button"/> 

任何想到爲什麼會發生這種情況,以及如何解決它將不勝感激。

+0

您確定這是您網頁上的所有代碼嗎?你有沒有壓倒一切的警報()? – Ibu 2011-05-29 00:12:28

+0

我的實際擴展時間更長,但爲了弄清楚問題出在哪裏,我正在將示例縮減爲仍然存在該錯誤的最短片段。 – yuji 2011-05-29 08:20:10

回答

8

警報/提示在彈出式窗口中不起作用(有關詳細信息,請參見this bug report)。你需要找到替代解決方案(改用html表單)。

+0

啊,那太糟糕了。但理解 - 謝謝你的答案! – yuji 2011-05-29 08:20:49