我想知道例程setSelectionRange文本框是否在新的Firefox夏天不起作用。在MDN站点(Mozilla开发人员中心)中指定了:
setSelectionRange(开始,结束) 返回类型:无返回值 设置文本框的选定部分,其中start参数是要选择的第一个字符的索引,end参数是 选择后的字符索引。将两个参数都设置为 将光标移动到相应位置的相同值 没有选择文字。
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<window id="yourwindow"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns:h="http://www.w3.org/1999/xhtml">
<button label="x" oncommand="sel()" />
<textbox id="id" multiline="true"
value="This is some text that could wrap onto multiple lines."/>
<script type="text/javascript">
<![CDATA[
function sel(){
var textbox = document.getElementById("id");
textbox.setSelectionRange( 1 , 2 );
}
]]>
</script>
</window>
答案 0 :(得分:1)
这个功能很好用。但是,当您单击按钮时,按钮上的输入焦点(逻辑上),setSelectionRange
将不会更改。您可以按 Tab 选择文本字段并使选择可见。或者,您也可以将此行添加到sel()
函数中以聚焦文本字段:
textbox.focus();