我具有以下功能
function change()
{
var input = document.getElementById('pas');
var input2 = input.cloneNode(false);
input2.type = 'password';
input.parentNode.replaceChild(input2,input);
input2.focus();
}
但是
focus()
在ie7中不起作用,那我该怎么办!
我想将光标放在输入中!
谢谢
更新很好的解决方案,谢谢,但是现在在歌剧中不起作用:(
- 2021-1-101 #
- 2021-1-102 #
我们遇到了同样的问题.为了集中精力,我们使用General函数,该函数应用了settimeout解决方案,该解决方案在下面提到: http://www.mkyong.com/javascript/focus-is-not-working-in-ie-solution/ 100毫秒。
在某些屏幕上仍然无法正常工作.特别是在包含iframe的情况下。 还有另一个已知的和类似的IE问题:
IE 9和IE 10无法时常在输入文本框中输入文本-> IE 9和IE 10无法时常在输入文本框中输入文本我注意到的是,当您有焦点时,没有指针,则可以通过按TAB键(将焦点放在下一个元素上)来应用变通方法,然后按SHIFT + TAB组合键将返回到具有焦点并键入指针的目标元素。 为了确保我们可以在内部输入中键入内容,我们将重点放在随机元素上,然后再关注目标输入。
$('body').focus(); n.focus();
因此,我们在一般焦点函数的javascript / JQuery中应用了相同的解决方案。 所以有一个if语句
... if($.browser.msie) { setTimeout(function() { try { $('body').focus(); //First focus on random element $(n).focus(); //Now focus on target element } catch (e) { /*just ignore */ } }, 100); //See http://www.mkyong.com/javascript/focus-is-not-working-in-ie-solution/ } else { //Standard FF, Chrome, Safari solution... ...
可以肯定的是,由于存在较大的回归,我们仍将settimeout作为备份保留解决方案。 在IE10,IE11,Firefox 45,Chrome 49.0.2623.87上进行了测试
- 2021-1-103 #
IE7不支持
focus()
方法.我没有看到任何方法。 - 2021-1-104 #
我遇到了同样的问题,并且通过制作SetInitialFocus函数并在我的PageLoad函数中调用它,能够使IE在后台使用代码.
看看下面的例子并试一试,它对我有用。 http://www.cambiaresearch.com/c4/df9f071c-a9eb-4d82-87fc-1a66bdcc068e/Set-Initial-Focus-on-an-aspnet-Page.aspx
- 2021-1-105 #
function change() { var input = document.getElementById('pas'); var input2 = input.cloneNode(false); input2.type = 'password'; input.parentNode.replaceChild(input2, input); setTimeout(function () { input2.focus(); }, 10); }
相关问题
- javascript:从另一个页面获取Bootstrap的模式内容javascriptjqueryhtmltwitterbootstrapmodaldialog2021-01-11 22:55
- javascript:通过单击外部关闭divjavascriptjqueryhtml2021-01-11 22:24
- javascript:jQuery Deferred和对话框javascriptjqueryjqueryui2021-01-12 01:25
- 使用javascript捕获在android虚拟键盘上键入的键javascriptandroidjquerysamsungmobile2021-01-11 08:24
- javascript:没有jquery的jquery的"触发"方法等效于什么?javascriptjquery2021-01-11 12:57
- 用于渲染HTML和JavaScript的Python库javascriptpythonhtml2021-01-11 13:24
对于IE,您需要使用settimeout函数,因为它很懒,例如:
来自http://www.mkyong.com/javascript/focus-is-not-working-in-ie-solution/
对于歌剧,这可能会有所帮助: 如何在歌剧的文本框上的所需索引中设置焦点