2010-06-20 32 views
0

在Firefox的正常网页<input type='text'/>上,您可以点击元素上的任意位置,浏览器将“关注”该元素。然而,在XUL(Firefox扩展)<textbox>元素上,只有在文本框的最左边部分边上单击 才会将其聚焦;点击它的任何其他地方什么也不做。 如何修复XUL文本框的焦点/可点击性?

我觉得这真的很烦人,尤其是考虑到Firefox中的输入元素如何正常工作。与网页浏览器扩展相比,我的网页用户界面更好!有谁知道一种方法来解决这种行为(我想也许我可以做一个onClick =“function(){this.focus()}”kinad的东西,但这似乎很hacky,所以我真的希望有一个更好的方式...)

回答

0

所以......这个有点尴尬,但我想我应该分享我是如何最终解决问题的。事实证明,XUL元素在点击时通常会关注。正如我发现的那样,问题在于如果你将那些元素放在之内,而他们不应该放在其中,然后它们会停止正确聚焦。在我来说,我不得不感叹**** ****如下:

<groupbox align="start"> 
    <caption label="Test"/> 
     <radiogroup> 

包裹我的所有文件的实际内容(我甚至没有关闭它们要么;这只是一个可怕的联合国注意到复制/粘贴错误)。

因此,如果您发现自己在第一次回答时认为需要代码,请首先检查您的XUL文件:问题可能是您自己的代码。

0

我终于想出了一个解决方法,但我仍然感到惊讶的是,没有一个解决这个问题的简单方法。如果有人有“真正的”修复,我会很乐意将答案给予他们。

<textbox id="foo" onclick="focusFunction('foo')"/> 

function focusFunction(id) { 
    document.getElementById(id).focus("") 
}