为了在用户单击输入框时将焦点移到输入的末尾,我使用了这样的方法,
$(function() {
$('#test-input').on('click', function(evt) {
$target = $(evt.target);
var val = $target.val();
$target.val('').val(val);
});
}())Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" name="test" id="test-input" value="abcdefgh" />Run Code Online (Sandbox Code Playgroud)
但是,如果我将“点击”更改为“焦点”,则不起作用。
$(function() {
$('#test-input').on('focus', function(evt) {
$target = $(evt.target);
var val = $target.val();
$target.val('').val(val);
});
}())Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" name="test" id="test-input" value="abcdefgh" />Run Code Online (Sandbox Code Playgroud)
在这种情况下,onClick 和 onFocus 操作有何不同?
我想将自动对焦放在html文本框上,使光标指向文本框中已存在的某些文本的末尾.我知道autofocus属性的作用.而且我也看到将光标放在文本输入值的末尾,该值回答了如何将光标放在末尾,但文本框在页面重新加载时不会自动聚焦.我该怎么做 - 在页面重新加载时自动对焦文本框并将光标放到文本末尾?
Code :
<textarea id="txtArea" style="width:106%; height:100px" align="center" name="task1" onkeypress="onTestChange();" onfocus="this.value = this.value;" autofocus ><?php echo $_GET["task"];?></textarea>
Run Code Online (Sandbox Code Playgroud)
我希望在文本回显后放置Cursor.这不是textarea的价值.
我提到的文本框也是Textarea.
这是我的JSF片段:
<p:tabView id="tabView" var="tab" value="#{data.tabs}" widgetVar="tabViewWidget"
activeIndex="#{data.newActiveTabIndex}">
<p:ajax event="tabClose" listener="#{logic.closeTab}" />
<p:tab title="#{tab.content.title != null ? tab.content.title : '&lt;new&gt;'}"
closable="#{tab.isClosable and data.tabs.size() > 2}">
<h:outputText value="#{tab.id} Test" />
<p:focus rendered="#{data.componentIdToFocus != null}" for="#{data.componentIdToFocus}" />
<p:inputText id="test" value="#{tab.content.title}">
<p:ajax event="keyup" listener="#{logic.setFocusingComponent}" update=":form:tabView" />
</p:inputText>
</p:tab>
</p:tabView>
Run Code Online (Sandbox Code Playgroud)
目的是每个选项卡中都有一个文本字段,用于在写入时更新选项卡的标题.给定的代码段工作,但p:focus将光标放在已写入文本的开头.我希望光标放在已经写入的文本的末尾.这样用户可以输入并在他/她输入标题时自动适应.
我希望我的情况很清楚.有人有解决方案吗?
最好的问候,弗洛里安
我的问题在这里:为什么这段代码不起作用????? ...邮件没有出现
我正试图在事件点击时向元素x添加事件监听器
function test()
{
alert("test");
}
var EventsCrossBrowsers =
{
addEvents:(function(element,event,func)
{
if(element.addEventListener)
{
return elemenet.addEventListener(event,func,false);
}
else if(elemenet.attachEvent)
{
return elemenet.attachEvent("on"+event,func);
}
}());
}
var x =document.getElementById("test");
EventsCrossBrowsers.addEvents(x,"click",test);
Run Code Online (Sandbox Code Playgroud)
非常感谢jfriend00 ....我认为最微笑的方式: -
function test()
{
alert("test");
}
function addEventsCrossBrowsers(elemenet,event,func)
{
if(elemenet.addEventListener)
{
elemenet.addEventListener(event,func,false);
}
else if(elemenet.attachEvent)
{
elemenet.attachEvent("on"+event,func);
}
}
var x =document.getElementById("test");
addEventsCrossBrowsers(x,"click",test);
Run Code Online (Sandbox Code Playgroud)
你的第二种方式几乎是一样的,除了我不理解回报...再次感谢你...